Module: wine Branch: refs/heads/master Commit: b7b7f2b67951e42f24a8e04095901c81fe129e11 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=b7b7f2b67951e42f24a8e040...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Jan 24 12:24:05 2006 +0100
Avoid importing _strlwr/_strupr from ntdll.
---
dlls/msvcrt/mbcs.c | 22 ++++++---------------- dlls/msvcrt/msvcrt.h | 7 ------- dlls/user/combo.c | 11 ++++++----- dlls/winedos/int21.c | 5 ++++- include/winternl.h | 3 --- programs/winedbg/winedbg.c | 1 - 6 files changed, 16 insertions(+), 33 deletions(-)
diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index 59bb182..fe03eb6 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -109,16 +109,6 @@ static inline unsigned char *u__strnset( return (unsigned char*) _strnset( (char*)s, c, len ); }
-static inline unsigned char *u__strlwr( unsigned char *s ) -{ - return (unsigned char*) _strlwr( (char*)s ); -} - -static inline unsigned char *u__strupr( unsigned char *s ) -{ - return (unsigned char*) _strupr( (char*)s ); -} - static inline size_t u_strcspn( const unsigned char *s, const unsigned char *rej ) { return strcspn( (const char *)s, (const char*)rej ); @@ -1122,12 +1112,12 @@ unsigned char* _mbsncat(unsigned char* d */ unsigned char* _mbslwr(unsigned char* s) { + unsigned char *ret = s; if (!s) return NULL; if (MSVCRT___mb_cur_max > 1) { unsigned int c; - unsigned char* p=s; while (*s) { c = _mbctolower(_mbsnextc(s)); @@ -1139,9 +1129,9 @@ unsigned char* _mbslwr(unsigned char* s) } *s++=c; } - return p; } - return u__strlwr(s); + else for ( ; *s; s++) *s = tolower(*s); + return ret; }
@@ -1150,12 +1140,12 @@ unsigned char* _mbslwr(unsigned char* s) */ unsigned char* _mbsupr(unsigned char* s) { + unsigned char *ret = s; if (!s) return NULL; if (MSVCRT___mb_cur_max > 1) { unsigned int c; - unsigned char* p=s; while (*s) { c = _mbctoupper(_mbsnextc(s)); @@ -1167,9 +1157,9 @@ unsigned char* _mbsupr(unsigned char* s) } *s++=c; } - return p; } - return u__strupr(s); + else for ( ; *s; s++) *s = toupper(*s); + return ret; }
diff --git a/dlls/msvcrt/msvcrt.h b/dlls/msvcrt/msvcrt.h index 3e00480..b565bed 100644 --- a/dlls/msvcrt/msvcrt.h +++ b/dlls/msvcrt/msvcrt.h @@ -641,11 +641,4 @@ int _dup2(int, int); int _pipe(int *, unsigned int, int); #endif
-/* FIXME: Functions that we forward to. They shouldn't be defined - * here, but for now they're not declared in the standard headers. - */ -void _splitpath(const char*,char*,char*,char*,char*); -char* _strlwr(char*); -char* _strupr(char*); - #endif /* __WINE_MSVCRT_H */ diff --git a/dlls/user/combo.c b/dlls/user/combo.c index 12d3121..55f04f9 100644 --- a/dlls/user/combo.c +++ b/dlls/user/combo.c @@ -2088,17 +2088,17 @@ static LRESULT ComboWndProc_common( HWND else /* unlike the unicode version, the ansi version does not overwrite the string if converting case */ { - char *string = NULL; + char *p, *string = NULL; LRESULT ret; if( lphc->dwStyle & CBS_LOWERCASE ) { string = strdupA((LPSTR)lParam); - _strlwr(string); + for (p = string; *p; p++) *p = tolower(*p); } else if( lphc->dwStyle & CBS_UPPERCASE ) { string = strdupA((LPSTR)lParam); - _strupr(string); + for (p = string; *p; p++) *p = toupper(*p); } ret = SendMessageA(lphc->hWndLBox, LB_ADDSTRING, 0, string ? (LPARAM)string : lParam); HeapFree(GetProcessHeap(), 0, string); @@ -2119,10 +2119,11 @@ static LRESULT ComboWndProc_common( HWND } else { + char *p; if( lphc->dwStyle & CBS_LOWERCASE ) - _strlwr((LPSTR)lParam); + for (p = (LPSTR)lParam; *p; p++) *p = tolower(*p); else if( lphc->dwStyle & CBS_UPPERCASE ) - _strupr((LPSTR)lParam); + for (p = (LPSTR)lParam; *p; p++) *p = toupper(*p); return SendMessageA(lphc->hWndLBox, LB_INSERTSTRING, wParam, lParam); } case CB_DELETESTRING16: diff --git a/dlls/winedos/int21.c b/dlls/winedos/int21.c index 85edf2a..3c52be8 100644 --- a/dlls/winedos/int21.c +++ b/dlls/winedos/int21.c @@ -1989,7 +1989,10 @@ static void INT21_ExtendedCountryInforma case 0x22: /* CAPITALIZE ASCIIZ STRING */ case 0xa2: /* CAPITALIZE ASCIIZ FILENAME */ TRACE("Convert ASCIIZ string to uppercase\n"); - _strupr( (LPSTR)CTX_SEG_OFF_TO_LIN(context, context->SegDs, context->Edx) ); + { + char *p = CTX_SEG_OFF_TO_LIN( context, context->SegDs, context->Edx ); + for ( ; *p; p++) *p = toupper(*p); + } break;
case 0x23: /* DETERMINE IF CHARACTER REPRESENTS YES/NO RESPONSE */ diff --git a/include/winternl.h b/include/winternl.h index a5a2e83..abe1745 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -1685,9 +1685,6 @@ typedef enum _SYSDBG_COMMAND { * Function declarations */
-extern LPSTR _strlwr(LPSTR str); /* FIXME: Doesn't belong here */ -extern LPSTR _strupr(LPSTR str); /* FIXME: Doesn't belong here */ - #if defined(__i386__) && defined(__GNUC__) static inline void WINAPI DbgBreakPoint(void) { __asm__ __volatile__("int3"); } static inline void WINAPI DbgUserBreakPoint(void) { __asm__ __volatile__("int3"); } diff --git a/programs/winedbg/winedbg.c b/programs/winedbg/winedbg.c index 87f9a02..ab6e5e3 100644 --- a/programs/winedbg/winedbg.c +++ b/programs/winedbg/winedbg.c @@ -955,7 +955,6 @@ static unsigned dbg_handle_debug_event(D buffer, (unsigned long)de->u.LoadDll.lpBaseOfDll, de->u.LoadDll.dwDebugInfoFileOffset, de->u.LoadDll.nDebugInfoSize); - _strupr(buffer); SymLoadModule(dbg_curr_process->handle, de->u.LoadDll.hFile, buffer, NULL, (unsigned long)de->u.LoadDll.lpBaseOfDll, 0); break_set_xpoints(FALSE);