Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
0cb665ca
Commit
0cb665ca
authored
Feb 02, 2017
by
Nikolay Sivov
Committed by
Alexandre Julliard
Feb 02, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
oledb32: Allow single quotation marks around property values.
Signed-off-by:
Nikolay Sivov
<
nsivov@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
83d33b6f
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
4 deletions
+8
-4
datainit.c
dlls/oledb32/datainit.c
+5
-4
database.c
dlls/oledb32/tests/database.c
+3
-0
No files found.
dlls/oledb32/datainit.c
View file @
0cb665ca
...
...
@@ -401,18 +401,19 @@ static HRESULT parse_init_string(const WCHAR *initstring, struct dbprops *props)
while
(
start
&&
(
eq
=
strchrW
(
start
,
'='
)))
{
static
const
WCHAR
providerW
[]
=
{
'P'
,
'r'
,
'o'
,
'v'
,
'i'
,
'd'
,
'e'
,
'r'
,
0
};
WCHAR
*
delim
,
quote
;
BSTR
value
,
name
;
WCHAR
*
delim
;
name
=
SysAllocStringLen
(
start
,
eq
-
start
);
/* skip equal sign to get value */
eq
++
;
if
(
*
eq
==
'"'
)
quote
=
(
*
eq
==
'"'
||
*
eq
==
'\''
)
?
*
eq
:
0
;
if
(
quote
)
{
/* for quoted value string, skip opening mark, look for terminating one */
eq
++
;
delim
=
strchrW
(
eq
,
'"'
);
delim
=
strchrW
(
eq
,
quote
);
}
else
delim
=
strchrW
(
eq
,
';'
);
...
...
@@ -422,7 +423,7 @@ static HRESULT parse_init_string(const WCHAR *initstring, struct dbprops *props)
/* skip semicolon if present */
if
(
delim
)
{
if
(
*
delim
==
'"'
)
if
(
*
delim
==
quote
)
delim
++
;
if
(
*
delim
==
';'
)
delim
++
;
...
...
dlls/oledb32/tests/database.c
View file @
0cb665ca
...
...
@@ -295,6 +295,8 @@ static void test_database(void)
static
WCHAR
extended_prop
[]
=
{
'd'
,
'a'
,
't'
,
'a'
,
' '
,
's'
,
'o'
,
'u'
,
'r'
,
'c'
,
'e'
,
'='
,
'd'
,
'u'
,
'm'
,
'm'
,
'y'
,
';'
,
'E'
,
'x'
,
't'
,
'e'
,
'n'
,
'd'
,
'e'
,
'd'
,
' '
,
'P'
,
'r'
,
'o'
,
'p'
,
'e'
,
'r'
,
't'
,
'i'
,
'e'
,
's'
,
'='
,
'\"'
,
'D'
,
'R'
,
'I'
,
'V'
,
'E'
,
'R'
,
'='
,
'A'
,
' '
,
'W'
,
'i'
,
'n'
,
'e'
,
' '
,
'O'
,
'D'
,
'B'
,
'C'
,
' '
,
'd'
,
'r'
,
'i'
,
'v'
,
'e'
,
'r'
,
';'
,
'U'
,
'I'
,
'D'
,
'='
,
'w'
,
'i'
,
'n'
,
'e'
,
';'
,
'\"'
,
';'
,
0
};
static
WCHAR
extended_prop2
[]
=
{
'd'
,
'a'
,
't'
,
'a'
,
' '
,
's'
,
'o'
,
'u'
,
'r'
,
'c'
,
'e'
,
'='
,
'\''
,
'd'
,
'u'
,
'm'
,
'm'
,
'y'
,
'\''
,
';'
,
'c'
,
'u'
,
's'
,
't'
,
'o'
,
'm'
,
'p'
,
'r'
,
'o'
,
'p'
,
'='
,
'\''
,
'1'
,
'2'
,
'3'
,
'.'
,
'4'
,
'\''
,
';'
,
0
};
IDataInitialize
*
datainit
=
NULL
;
HRESULT
hr
;
...
...
@@ -312,6 +314,7 @@ static void test_database(void)
test_GetDataSource
(
initstring_lower
);
test_GetDataSource2
(
customprop
);
test_GetDataSource2
(
extended_prop
);
test_GetDataSource2
(
extended_prop2
);
}
static
void
free_dispparams
(
DISPPARAMS
*
params
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment