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
63f95fed
Commit
63f95fed
authored
Oct 29, 2015
by
Sebastian Lackner
Committed by
Alexandre Julliard
Oct 29, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
combase: Implement WindowsConcatString.
Signed-off-by:
Sebastian Lackner
<
sebastian@fds-team.de
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
4afb30c5
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
2 deletions
+32
-2
api-ms-win-core-winrt-string-l1-1-0.spec
...rt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec
+1
-1
combase.spec
dlls/combase/combase.spec
+1
-1
string.c
dlls/combase/string.c
+30
-0
No files found.
dlls/api-ms-win-core-winrt-string-l1-1-0/api-ms-win-core-winrt-string-l1-1-0.spec
View file @
63f95fed
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
@ stub HSTRING_UserUnmarshal
@ stub HSTRING_UserUnmarshal
@ stub HSTRING_UserUnmarshal64
@ stub HSTRING_UserUnmarshal64
@ stub WindowsCompareStringOrdinal
@ stub WindowsCompareStringOrdinal
@ st
ub
WindowsConcatString
@ st
dcall WindowsConcatString(ptr ptr ptr) combase.
WindowsConcatString
@ stdcall WindowsCreateString(wstr long ptr) combase.WindowsCreateString
@ stdcall WindowsCreateString(wstr long ptr) combase.WindowsCreateString
@ stdcall WindowsCreateStringReference(wstr long ptr ptr) combase.WindowsCreateStringReference
@ stdcall WindowsCreateStringReference(wstr long ptr ptr) combase.WindowsCreateStringReference
@ stdcall WindowsDeleteString(ptr) combase.WindowsDeleteString
@ stdcall WindowsDeleteString(ptr) combase.WindowsDeleteString
...
...
dlls/combase/combase.spec
View file @
63f95fed
...
@@ -288,7 +288,7 @@
...
@@ -288,7 +288,7 @@
@ stdcall WdtpInterfacePointer_UserUnmarshal(ptr ptr ptr ptr) ole32.WdtpInterfacePointer_UserUnmarshal
@ stdcall WdtpInterfacePointer_UserUnmarshal(ptr ptr ptr ptr) ole32.WdtpInterfacePointer_UserUnmarshal
@ stub WdtpInterfacePointer_UserUnmarshal64
@ stub WdtpInterfacePointer_UserUnmarshal64
@ stub WindowsCompareStringOrdinal
@ stub WindowsCompareStringOrdinal
@ st
ub WindowsConcatString
@ st
dcall WindowsConcatString(ptr ptr ptr)
@ stdcall WindowsCreateString(wstr long ptr)
@ stdcall WindowsCreateString(wstr long ptr)
@ stdcall WindowsCreateStringReference(wstr long ptr ptr)
@ stdcall WindowsCreateStringReference(wstr long ptr ptr)
@ stdcall WindowsDeleteString(ptr)
@ stdcall WindowsDeleteString(ptr)
...
...
dlls/combase/string.c
View file @
63f95fed
...
@@ -330,6 +330,36 @@ HRESULT WINAPI WindowsSubstringWithSpecifiedLength(HSTRING str, UINT32 start, UI
...
@@ -330,6 +330,36 @@ HRESULT WINAPI WindowsSubstringWithSpecifiedLength(HSTRING str, UINT32 start, UI
}
}
/***********************************************************************
/***********************************************************************
* WindowsConcatString (combase.@)
*/
HRESULT
WINAPI
WindowsConcatString
(
HSTRING
str1
,
HSTRING
str2
,
HSTRING
*
out
)
{
struct
hstring_private
*
priv1
=
impl_from_HSTRING
(
str1
);
struct
hstring_private
*
priv2
=
impl_from_HSTRING
(
str2
);
struct
hstring_private
*
priv
;
TRACE
(
"(%p, %p, %p)
\n
"
,
str1
,
str2
,
out
);
if
(
out
==
NULL
)
return
E_INVALIDARG
;
if
(
str1
==
NULL
)
return
WindowsDuplicateString
(
str2
,
out
);
if
(
str2
==
NULL
)
return
WindowsDuplicateString
(
str1
,
out
);
if
(
!
priv1
->
length
&&
!
priv2
->
length
)
{
*
out
=
NULL
;
return
S_OK
;
}
if
(
!
alloc_string
(
priv1
->
length
+
priv2
->
length
,
out
))
return
E_OUTOFMEMORY
;
priv
=
impl_from_HSTRING
(
*
out
);
memcpy
(
priv
->
buffer
,
priv1
->
buffer
,
priv1
->
length
*
sizeof
(
*
priv1
->
buffer
));
memcpy
(
priv
->
buffer
+
priv1
->
length
,
priv2
->
buffer
,
priv2
->
length
*
sizeof
(
*
priv2
->
buffer
));
return
S_OK
;
}
/***********************************************************************
* WindowsIsStringEmpty (combase.@)
* WindowsIsStringEmpty (combase.@)
*/
*/
BOOL
WINAPI
WindowsIsStringEmpty
(
HSTRING
str
)
BOOL
WINAPI
WindowsIsStringEmpty
(
HSTRING
str
)
...
...
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