From 7f5a71892691b6c4cb87a37fa6bfb860c8af4dc7 Mon Sep 17 00:00:00 2001 From: Alex Henrie Date: Sun, 20 Nov 2022 19:40:29 -0700 Subject: [PATCH] wldap32: Use the wcsdup function instead of reimplementing it. --- dlls/wldap32/control.c | 2 +- dlls/wldap32/page.c | 4 ++-- dlls/wldap32/winldap_private.h | 12 ++---------- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/dlls/wldap32/control.c b/dlls/wldap32/control.c index 746ef6049ce..ba1cefe9a45 100644 --- a/dlls/wldap32/control.c +++ b/dlls/wldap32/control.c @@ -215,7 +215,7 @@ ULONG CDECL ldap_encode_sort_controlW( LDAP *ld, LDAPSortKeyW **sortkeys, LDAPCo if ((result = ldap_create_sort_controlW( ld, sortkeys, critical, &control )) == WLDAP32_LDAP_SUCCESS) { - ret->ldctl_oid = strdupW(control->ldctl_oid); + ret->ldctl_oid = wcsdup( control->ldctl_oid ); bv_val_dup( &control->ldctl_value, &ret->ldctl_value ); ret->ldctl_iscritical = control->ldctl_iscritical; ldap_control_freeW( control ); diff --git a/dlls/wldap32/page.c b/dlls/wldap32/page.c index 7e066015d7e..64972b9829f 100644 --- a/dlls/wldap32/page.c +++ b/dlls/wldap32/page.c @@ -297,8 +297,8 @@ LDAPSearch * CDECL ldap_search_init_pageW( LDAP *ld, WCHAR *dn, ULONG scope, WCH return NULL; } - if (dn && !(search->dn = strdupW( dn ))) goto fail; - if (filter && !(search->filter = strdupW( filter ))) goto fail; + if (dn && !(search->dn = wcsdup( dn ))) goto fail; + if (filter && !(search->filter = wcsdup( filter ))) goto fail; if (attrs && !(search->attrs = strarraydupW( attrs ))) goto fail; len = serverctrls ? controlarraylenW( serverctrls ) : 0; diff --git a/dlls/wldap32/winldap_private.h b/dlls/wldap32/winldap_private.h index 49114dcf4ba..886c7933e9f 100644 --- a/dlls/wldap32/winldap_private.h +++ b/dlls/wldap32/winldap_private.h @@ -542,14 +542,6 @@ static inline char *strdupU( const char *src ) return dst; } -static inline WCHAR *strdupW( const WCHAR *src ) -{ - WCHAR *dst; - if (!src) return NULL; - if ((dst = malloc( (lstrlenW( src ) + 1) * sizeof(WCHAR) ))) lstrcpyW( dst, src ); - return dst; -} - static inline char *strWtoU( const WCHAR *str ) { char *ret = NULL; @@ -652,7 +644,7 @@ static inline WCHAR **strarraydupW( WCHAR **strarray ) { WCHAR **p = strarray, **q = ret; - while (*p) *q++ = strdupW( *p++ ); + while (*p) *q++ = wcsdup( *p++ ); *q = NULL; } } @@ -1225,7 +1217,7 @@ static inline LDAPControlW *controldupW( LDAPControlW *control ) return NULL; } - ret->ldctl_oid = strdupW( control->ldctl_oid ); + ret->ldctl_oid = wcsdup( control->ldctl_oid ); ret->ldctl_value.bv_len = len; ret->ldctl_value.bv_val = val; ret->ldctl_iscritical = control->ldctl_iscritical;