Module: wine Branch: master Commit: 85051917fe99e5c257638bf04caf7dfa94440410 URL: http://source.winehq.org/git/wine.git/?a=commit;h=85051917fe99e5c257638bf04c...
Author: André Hentschel nerv@dawncrow.de Date: Fri Oct 14 20:41:58 2011 +0200
dbghelp: Rewrite stabs parsing to not need PATH_MAX.
---
dlls/dbghelp/stabs.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/dlls/dbghelp/stabs.c b/dlls/dbghelp/stabs.c index 1bdd706..b4188d1 100644 --- a/dlls/dbghelp/stabs.c +++ b/dlls/dbghelp/stabs.c @@ -47,9 +47,6 @@ # include <unistd.h> #endif #include <stdio.h> -#ifndef PATH_MAX -#define PATH_MAX MAX_PATH -#endif #include <assert.h> #include <stdarg.h>
@@ -1272,7 +1269,7 @@ BOOL stabs_parse(struct module* module, unsigned long load_offset, struct symt_function* curr_func = NULL; struct symt_block* block = NULL; struct symt_compiland* compiland = NULL; - char srcpath[PATH_MAX]; /* path to directory source file is in */ + char* srcpath = NULL; int i; int nstab; const char* ptr; @@ -1294,7 +1291,6 @@ BOOL stabs_parse(struct module* module, unsigned long load_offset, nstab = stablen / sizeof(struct stab_nlist); strs_end = strs + strtablen;
- memset(srcpath, 0, sizeof(srcpath)); memset(stabs_basic, 0, sizeof(stabs_basic)); memset(&pending_block, 0, sizeof(pending_block)); memset(&pending_func, 0, sizeof(pending_func)); @@ -1565,7 +1561,8 @@ BOOL stabs_parse(struct module* module, unsigned long load_offset, if (*ptr == '\0') /* end of N_SO file */ { /* Nuke old path. */ - srcpath[0] = '\0'; + HeapFree(GetProcessHeap(), 0, srcpath); + srcpath = NULL; stabs_finalize_function(module, curr_func, 0); curr_func = NULL; source_idx = -1; @@ -1583,7 +1580,10 @@ BOOL stabs_parse(struct module* module, unsigned long load_offset, compiland = symt_new_compiland(module, 0 /* FIXME */, source_idx); } else + { + srcpath = HeapAlloc(GetProcessHeap(), 0, len + 1); strcpy(srcpath, ptr); + } } break; case N_SOL: