Alexandre Julliard : include: Don't use IsBadStringPtr in debug functions for Unix libraries.

Alexandre Julliard julliard at winehq.org
Fri Sep 18 15:52:49 CDT 2020


Module: wine
Branch: master
Commit: 2eed0cdb8f860d37f4efa631719a0a9ae4f721e1
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2eed0cdb8f860d37f4efa631719a0a9ae4f721e1

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Sep 18 15:13:19 2020 +0200

include: Don't use IsBadStringPtr in debug functions for Unix libraries.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ntdll/unix/virtual.c | 44 --------------------------------------------
 include/wine/debug.h      |  4 ++++
 2 files changed, 4 insertions(+), 44 deletions(-)

diff --git a/dlls/ntdll/unix/virtual.c b/dlls/ntdll/unix/virtual.c
index 22d328b1ce..62b2ca1346 100644
--- a/dlls/ntdll/unix/virtual.c
+++ b/dlls/ntdll/unix/virtual.c
@@ -3201,50 +3201,6 @@ BOOL virtual_check_buffer_for_write( void *ptr, SIZE_T size )
 }
 
 
-/*************************************************************
- *            IsBadStringPtrA
- *
- * IsBadStringPtrA replacement for ntdll, to catch exception in debug traces.
- */
-BOOL WINAPI IsBadStringPtrA( LPCSTR str, UINT_PTR max )
-{
-    if (!str) return TRUE;
-    __TRY
-    {
-        volatile const char *p = str;
-        while (p != str + max) if (!*p++) break;
-    }
-    __EXCEPT_SYSCALL
-    {
-        return TRUE;
-    }
-    __ENDTRY
-    return FALSE;
-}
-
-
-/*************************************************************
- *            IsBadStringPtrW
- *
- * IsBadStringPtrW replacement for ntdll, to catch exception in debug traces.
- */
-BOOL WINAPI IsBadStringPtrW( LPCWSTR str, UINT_PTR max )
-{
-    if (!str) return TRUE;
-    __TRY
-    {
-        volatile const WCHAR *p = str;
-        while (p != str + max) if (!*p++) break;
-    }
-    __EXCEPT_SYSCALL
-    {
-        return TRUE;
-    }
-    __ENDTRY
-    return FALSE;
-}
-
-
 /***********************************************************************
  *           virtual_uninterrupted_read_memory
  *
diff --git a/include/wine/debug.h b/include/wine/debug.h
index 912d61a90a..e064aaefb8 100644
--- a/include/wine/debug.h
+++ b/include/wine/debug.h
@@ -225,7 +225,9 @@ static inline const char *wine_dbgstr_an( const char *str, int n )
 
     if (!str) return "(null)";
     if (!((ULONG_PTR)str >> 16)) return wine_dbg_sprintf( "#%04x", LOWORD(str) );
+#ifndef WINE_UNIX_LIB
     if (IsBadStringPtrA( str, n )) return "(invalid)";
+#endif
     if (n == -1) for (n = 0; str[n]; n++) ;
     *dst++ = '"';
     while (n-- > 0 && dst <= buffer + sizeof(buffer) - 9)
@@ -267,7 +269,9 @@ static inline const char *wine_dbgstr_wn( const WCHAR *str, int n )
 
     if (!str) return "(null)";
     if (!((ULONG_PTR)str >> 16)) return wine_dbg_sprintf( "#%04x", LOWORD(str) );
+#ifndef WINE_UNIX_LIB
     if (IsBadStringPtrW( str, n )) return "(invalid)";
+#endif
     if (n == -1) for (n = 0; str[n]; n++) ;
     *dst++ = 'L';
     *dst++ = '"';




More information about the wine-cvs mailing list