Fixed rsym for executables without any debug informations. Modified: trunk/reactos/tools/rsym.c _____
Modified: trunk/reactos/tools/rsym.c --- trunk/reactos/tools/rsym.c 2005-05-17 19:16:21 UTC (rev 15386) +++ trunk/reactos/tools/rsym.c 2005-05-17 20:28:57 UTC (rev 15387) @@ -368,7 +368,8 @@
CoffIndex++; } NewStabFunctionStringOffset = (*MergedSymbols)[*MergedSymbolCount].FunctionOffset; - if (CoffSymbols[CoffIndex].Address < (*MergedSymbols)[*MergedSymbolCount].Address + if (CoffSymbolsCount > 0 && + CoffSymbols[CoffIndex].Address < (*MergedSymbols)[*MergedSymbolCount].Address && StabFunctionStartAddress < CoffSymbols[CoffIndex].Address && 0 != CoffSymbols[CoffIndex].FunctionOffset) { @@ -799,6 +800,13 @@ exit(1); }
+ if (StabsLength == 0 || StabStringsLength == 0) + { + /* no symbol info */ + free(FileData); + return 0; + } + if (GetCoffInfo(FileData, PEFileHeader, PESectionHeaders, &CoffsLength, &CoffBase, &CoffStringsLength, &CoffStringBase)) {