From 6e76f8ef3a1a11c1dd1793dba988057a0a9c7685 Mon Sep 17 00:00:00 2001 From: "Markus F.X.J. Oberhumer" Date: Thu, 6 Oct 2016 13:04:46 +0200 Subject: [PATCH] Don't use variable length arrays (VLA). --- src/Makefile | 2 +- src/p_mach.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Makefile b/src/Makefile index dfac2b0d..1879c686 100644 --- a/src/Makefile +++ b/src/Makefile @@ -68,7 +68,7 @@ CXXFLAGS += -fno-delete-null-pointer-checks endif CXXFLAGS += -fno-strict-aliasing -fwrapv CXXFLAGS += -funsigned-char -CXXFLAGS += -Wall -W -Wcast-align -Wcast-qual -Wmissing-declarations -Wpointer-arith -Wshadow -Wwrite-strings +CXXFLAGS += -Wall -W -Wcast-align -Wcast-qual -Wmissing-declarations -Wpointer-arith -Wshadow -Wvla -Wwrite-strings CXXFLAGS_WERROR ?= -Werror CXXFLAGS += $(CXXFLAGS_WERROR) diff --git a/src/p_mach.cpp b/src/p_mach.cpp index 0b3d38bb..add30006 100644 --- a/src/p_mach.cpp +++ b/src/p_mach.cpp @@ -684,8 +684,8 @@ void PackMachBase::pack4(OutputFile *fo, Filter &ft) // append PackHeader } if (my_filetype == Mach_header::MH_EXECUTE) { // Get a writeable copy of the stub to make editing easier. - unsigned char upxstub[sz_stub_main]; - memcpy(upxstub, stub_main, sizeof(upxstub)); + ByteArray(upxstub, sz_stub_main); + memcpy(upxstub, stub_main, sz_stub_main); Mach_header *const mhp = (Mach_header *)upxstub; char *tail = (char *)(1+ mhp);