mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-14 19:47:27 +00:00
sapi: Implement ISpObjectToken GetId.
This commit is contained in:
parent
01b4286f82
commit
688ba6ae31
|
@ -185,11 +185,11 @@ static void test_object_token(void)
|
|||
ok( hr == S_OK, "got %08lx\n", hr );
|
||||
|
||||
hr = ISpObjectToken_GetId( token, NULL );
|
||||
todo_wine ok( hr == SPERR_UNINITIALIZED, "got %08lx\n", hr );
|
||||
ok( hr == SPERR_UNINITIALIZED, "got %08lx\n", hr );
|
||||
|
||||
tempW = (LPWSTR)0xdeadbeef;
|
||||
hr = ISpObjectToken_GetId( token, &tempW );
|
||||
todo_wine ok( hr == SPERR_UNINITIALIZED, "got %08lx\n", hr );
|
||||
ok( hr == SPERR_UNINITIALIZED, "got %08lx\n", hr );
|
||||
ok( tempW == (LPWSTR)0xdeadbeef, "got %s\n", wine_dbgstr_w(tempW) );
|
||||
|
||||
hr = ISpObjectToken_GetCategory( token, NULL );
|
||||
|
@ -220,15 +220,15 @@ static void test_object_token(void)
|
|||
ok( hr == SPERR_ALREADY_INITIALIZED, "got %08lx\n", hr );
|
||||
|
||||
hr = ISpObjectToken_GetId( token, NULL );
|
||||
todo_wine ok( hr == E_POINTER, "got %08lx\n", hr );
|
||||
ok( hr == E_POINTER, "got %08lx\n", hr );
|
||||
|
||||
hr = ISpObjectToken_GetCategory( token, NULL );
|
||||
todo_wine ok( hr == E_POINTER, "got %08lx\n", hr );
|
||||
|
||||
tempW = NULL;
|
||||
hr = ISpObjectToken_GetId( token, &tempW );
|
||||
todo_wine ok( hr == S_OK, "got %08lx\n", hr );
|
||||
todo_wine ok( tempW != NULL, "got %p\n", tempW );
|
||||
ok( hr == S_OK, "got %08lx\n", hr );
|
||||
ok( tempW != NULL, "got %p\n", tempW );
|
||||
if (tempW) {
|
||||
ok( !wcscmp(tempW, L"HKEY_LOCAL_MACHINE\\SOFTWARE"), "got %s\n",
|
||||
wine_dbgstr_w(tempW) );
|
||||
|
@ -268,8 +268,8 @@ static void test_object_token(void)
|
|||
|
||||
tempW = NULL;
|
||||
hr = ISpObjectToken_GetId( token, &tempW );
|
||||
todo_wine ok( hr == S_OK, "got %08lx\n", hr );
|
||||
todo_wine ok( tempW != NULL, "got %p\n", tempW );
|
||||
ok( hr == S_OK, "got %08lx\n", hr );
|
||||
ok( tempW != NULL, "got %p\n", tempW );
|
||||
if (tempW) {
|
||||
ok( !wcsncmp(tempW, token_id, wcslen(token_id)),
|
||||
"got %s (expected %s)\n", wine_dbgstr_w(tempW), wine_dbgstr_w(token_id) );
|
||||
|
|
|
@ -960,8 +960,28 @@ static HRESULT WINAPI token_SetId( ISpObjectToken *iface,
|
|||
static HRESULT WINAPI token_GetId( ISpObjectToken *iface,
|
||||
LPWSTR *token_id )
|
||||
{
|
||||
FIXME( "stub\n" );
|
||||
return E_NOTIMPL;
|
||||
struct object_token *This = impl_from_ISpObjectToken( iface );
|
||||
|
||||
TRACE( "%p, %p\n", This, token_id);
|
||||
|
||||
if (!This->token_key)
|
||||
return SPERR_UNINITIALIZED;
|
||||
|
||||
if (!token_id)
|
||||
return E_POINTER;
|
||||
|
||||
if (!This->token_id)
|
||||
{
|
||||
FIXME("Loading default category not supported.\n");
|
||||
return E_POINTER;
|
||||
}
|
||||
|
||||
*token_id = CoTaskMemAlloc( (wcslen(This->token_id) + 1) * sizeof(WCHAR));
|
||||
if (!*token_id)
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
wcscpy(*token_id, This->token_id);
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI token_GetCategory( ISpObjectToken *iface,
|
||||
|
|
Loading…
Reference in a new issue