From: Daniel Lehman <dlehman25(a)gmail.com> --- dlls/odbc32/proxyodbc.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/dlls/odbc32/proxyodbc.c b/dlls/odbc32/proxyodbc.c index bbb0e1702ae..259e8c9f90f 100644 --- a/dlls/odbc32/proxyodbc.c +++ b/dlls/odbc32/proxyodbc.c @@ -4241,10 +4241,22 @@ static SQLRETURN parse_connect_string( struct attribute_list *list, const WCHAR attr->name[len] = 0; q++; /* skip = */ - p = wcschr( q, ';' ); + if (*q == '{') + { + if (!(p = wcschr( ++q, '}' ))) + { + free_attribute( attr ); + free_attribute_list( list ); + return SQL_ERROR; + } + } + else + p = wcschr( q, ';' ); + if (p) { len = p - q; + if (*p == '}') p++; p++; } else -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/6281