Changeset 2893 for trunk/kLdr/kLdrModNative.c
- Timestamp:
- Dec 22, 2006, 7:01:38 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kLdr/kLdrModNative.c
r2883 r2893 511 511 /** @copydoc kLdrModQuerySymbol */ 512 512 static int kldrModNativeQuerySymbol(PKLDRMOD pMod, const void *pvBits, KLDRADDR BaseAddress, uint32_t iSymbol, 513 const char *p szSymbol, PFNKLDRMODGETIMPORT pfnGetForwarder, void *pvUser,514 P KLDRADDR puValue, uint32_t *pfKind)513 const char *pchSymbol, size_t cchSymbol, const char *pszVersion, 514 PFNKLDRMODGETIMPORT pfnGetForwarder, void *pvUser, PKLDRADDR puValue, uint32_t *pfKind) 515 515 { 516 516 PKLDRMODNATIVE pModNative = (PKLDRMODNATIVE)pMod->pvData; 517 const char *pszSymbol = pchSymbol; 517 518 #ifdef __OS2__ 518 519 APIRET rc; 519 520 PFN pfn; 520 521 if (!pszSymbol && iSymbol >= 0x10000) 521 #elif defined(__WIN__) 522 FARPROC pfn; 523 #else 524 # error "Port me" 525 #endif 526 527 /* make stack copy of the symbol if it isn't zero terminated. */ 528 if (pszSymbol && pszSymbol[cchSymbol]) 529 { 530 char *pszCopy = kLdrHlpAllocA(cchSymbol + 1); 531 kLdrHlpMemCopy(pszCopy, pchSymbol, cchSymbol); 532 pszCopy[cchSymbol] = '\0'; 533 pszSymbol = pszCopy; 534 } 535 536 #ifdef __OS2__ 537 if (!pchSymbol && iSymbol >= 0x10000) 522 538 return KLDR_ERR_SYMBOL_NOT_FOUND; 523 539 … … 550 566 551 567 #elif defined(__WIN__) 552 FARPROC pfn;553 554 568 if (!pszSymbol && iSymbol >= 0x10000) 555 569 return KLDR_ERR_SYMBOL_NOT_FOUND; … … 1023 1037 kldrModNativeGetStackInfo, 1024 1038 kldrModNativeQueryMainEntrypoint, 1039 NULL /* fixme */, 1040 NULL /* fixme */, 1025 1041 kldrModNativeEnumDbgInfo, 1026 1042 kldrModNativeHasDbgInfo, … … 1037 1053 kldrModNativeGetBits, 1038 1054 kldrModNativeRelocateBits, 1055 NULL /* fixme */, 1039 1056 42 /* the end */ 1040 1057 };
Note:
See TracChangeset
for help on using the changeset viewer.