Files
wine-staging/patches/odbc32-fixes/0012-odbc32-SQLDescribeColW-add-ANSI-fallback.patch
Alistair Leslie-Hughes 3714d05e91 Updated odbc32-fixes patchset
2025-09-08 09:54:01 +10:00

41 lines
1.7 KiB
Diff

From e482d2dec06bdbefa1aafff913cb34aeaa7c854e Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Sat, 26 Apr 2025 17:32:49 +1000
Subject: [PATCH] odbc32: SQLDescribeColW add ANSI fallback
---
dlls/odbc32/proxyodbc.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/dlls/odbc32/proxyodbc.c b/dlls/odbc32/proxyodbc.c
index aace16cde55..00d25d06ec2 100644
--- a/dlls/odbc32/proxyodbc.c
+++ b/dlls/odbc32/proxyodbc.c
@@ -6050,11 +6050,21 @@ static SQLRETURN describe_col_win32_w( struct statement *stmt, SQLUSMALLINT col_
SQLSMALLINT buf_len, SQLSMALLINT *name_len, SQLSMALLINT *data_type,
SQLULEN *col_size, SQLSMALLINT *decimal_digits, SQLSMALLINT *nullable )
{
+ SQLRETURN ret = SQL_ERROR;
+
if (stmt->hdr.win32_funcs->SQLDescribeColW)
return stmt->hdr.win32_funcs->SQLDescribeColW( stmt->hdr.win32_handle, col_number, col_name, buf_len,
name_len, data_type, col_size, decimal_digits, nullable );
- if (stmt->hdr.win32_funcs->SQLDescribeCol) FIXME( "Unicode to ANSI conversion not handled\n" );
- return SQL_ERROR;
+ if (stmt->hdr.win32_funcs->SQLDescribeCol)
+ {
+ SQLCHAR *name = (SQLCHAR*)strdupWtoA( (WCHAR*)col_name );
+
+ ret = stmt->hdr.win32_funcs->SQLDescribeCol( stmt->hdr.win32_handle, col_number, name, buf_len, name_len,
+ data_type, col_size, decimal_digits, nullable);
+
+ free(name);
+ }
+ return ret;
}
/*************************************************************************
--
2.50.1