diff options
author | Matt Fleming <matt.fleming@intel.com> | 2013-03-15 16:32:52 +0000 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2013-03-15 17:16:29 +0000 |
commit | ba45539416c804ed65a129ae3fd07f585f6a61ff (patch) | |
tree | ca5930045fe3a7f954825883cfad4a6f5f16ecf0 | |
parent | 00a6f13139ce5d967b1f9614068a549520d4cca3 (diff) | |
download | syslinux-ba45539416c804ed65a129ae3fd07f585f6a61ff.tar.gz syslinux-ba45539416c804ed65a129ae3fd07f585f6a61ff.tar.xz syslinux-ba45539416c804ed65a129ae3fd07f585f6a61ff.zip |
ldlinux: Fixup lwip merge botch
The lwip merge changed the code for copying cmdline arguments from,
strcpy(q, p);
to this,
do {
*q++ = ch = *p++;
} while (ch);
which means 'p' no longer points at 'args'. Use 'args' explicitly for
the case where we need to apply a filename extension, otherwise users
end up seeing errors like,
Failed to load COM32 file .c32
Reported-by: Mattias Schlenker <ms@mattiasschlenker.de>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
-rw-r--r-- | com32/elflink/ldlinux/execute.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/com32/elflink/ldlinux/execute.c b/com32/elflink/ldlinux/execute.c index 49a0de52..bf0bd8ce 100644 --- a/com32/elflink/ldlinux/execute.c +++ b/com32/elflink/ldlinux/execute.c @@ -101,6 +101,7 @@ __export void execute(const char *cmdline, uint32_t type, bool sysappend) * filename extension if COM32 and * retry. */ + p = args; if (t->type == IMAGE_TYPE_COM32) { p = apply_extension(p, ".c32"); if (!p) |