winehq.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
February
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
January
2003
December
November
October
September
August
July
June
May
April
March
February
January
2002
December
November
October
September
August
July
June
May
April
March
February
January
2001
December
November
October
September
August
July
June
May
April
March
February
List overview
wine-commits
July 2020
----- 2025 -----
February 2025
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
January 2004
----- 2003 -----
December 2003
November 2003
October 2003
September 2003
August 2003
July 2003
June 2003
May 2003
April 2003
March 2003
February 2003
January 2003
----- 2002 -----
December 2002
November 2002
October 2002
September 2002
August 2002
July 2002
June 2002
May 2002
April 2002
March 2002
February 2002
January 2002
----- 2001 -----
December 2001
November 2001
October 2001
September 2001
August 2001
July 2001
June 2001
May 2001
April 2001
March 2001
February 2001
wine-commits@winehq.org
1 participants
826 discussions
Start a n
N
ew thread
Rémi Bernon : dxgi: Implement IDXGIOutput5 and IDXGIOutput6 stubs.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: d806203850c9666ff32637f5215fbb21a0f2bc9c URL:
https://source.winehq.org/git/wine.git/?a=commit;h=d806203850c9666ff32637f5…
Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Thu Jul 16 17:26:52 2020 +0200 dxgi: Implement IDXGIOutput5 and IDXGIOutput6 stubs. Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/dxgi/adapter.c | 2 +- dlls/dxgi/dxgi_private.h | 2 +- dlls/dxgi/output.c | 166 ++++++++++++++++++++++++++++++++++------------- 3 files changed, 123 insertions(+), 47 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=d806203850c9666ff326…
1
0
0
0
Alexandre Julliard : ntdll: Move some power stub functions to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: e0a2f85b788b5cd764582a71fadaee11f06ab979 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=e0a2f85b788b5cd764582a71…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:54:24 2020 +0200 ntdll: Move some power stub functions to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/nt.c | 65 ------------------------------------------------ dlls/ntdll/ntdll.spec | 20 +++++++-------- dlls/ntdll/unix/system.c | 55 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 75 deletions(-) diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c index d27dca4be0..cc13672b2b 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -885,71 +885,6 @@ NTSTATUS WINAPI NtDisplayString ( PUNICODE_STRING string ) return ret; } -/****************************************************************************** - * NtInitiatePowerAction [NTDLL.@] - * - */ -NTSTATUS WINAPI NtInitiatePowerAction( - IN POWER_ACTION SystemAction, - IN SYSTEM_POWER_STATE MinSystemState, - IN ULONG Flags, - IN BOOLEAN Asynchronous) -{ - FIXME("(%d,%d,0x%08x,%d),stub\n", - SystemAction,MinSystemState,Flags,Asynchronous); - return STATUS_NOT_IMPLEMENTED; -} - -/****************************************************************************** - * NtSetThreadExecutionState [NTDLL.@] - * - */ -NTSTATUS WINAPI NtSetThreadExecutionState( EXECUTION_STATE new_state, EXECUTION_STATE *old_state ) -{ - static EXECUTION_STATE current = - ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED | ES_USER_PRESENT; - *old_state = current; - - WARN( "(0x%x, %p): stub, harmless.\n", new_state, old_state ); - - if (!(current & ES_CONTINUOUS) || (new_state & ES_CONTINUOUS)) - current = new_state; - return STATUS_SUCCESS; -} - -/****************************************************************************** - * NtCreatePowerRequest [NTDLL.@] - * - */ -NTSTATUS WINAPI NtCreatePowerRequest( HANDLE *handle, COUNTED_REASON_CONTEXT *context ) -{ - FIXME( "(%p, %p): stub\n", handle, context ); - - return STATUS_NOT_IMPLEMENTED; -} - -/****************************************************************************** - * NtSetPowerRequest [NTDLL.@] - * - */ -NTSTATUS WINAPI NtSetPowerRequest( HANDLE handle, POWER_REQUEST_TYPE type ) -{ - FIXME( "(%p, %u): stub\n", handle, type ); - - return STATUS_NOT_IMPLEMENTED; -} - -/****************************************************************************** - * NtClearPowerRequest [NTDLL.@] - * - */ -NTSTATUS WINAPI NtClearPowerRequest( HANDLE handle, POWER_REQUEST_TYPE type ) -{ - FIXME( "(%p, %u): stub\n", handle, type ); - - return STATUS_NOT_IMPLEMENTED; -} - /****************************************************************************** * NtAllocateLocallyUniqueId (NTDLL.@) */ diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec index 22cb9d1942..6293dc81ed 100644 --- a/dlls/ntdll/ntdll.spec +++ b/dlls/ntdll/ntdll.spec @@ -149,7 +149,7 @@ @ stdcall -syscall NtCancelIoFileEx(long ptr ptr) @ stdcall -syscall NtCancelTimer(long ptr) @ stdcall -syscall NtClearEvent(long) -@ stdcall NtClearPowerRequest(long long) +@ stdcall -syscall NtClearPowerRequest(long long) @ stdcall NtClose(long) @ stub NtCloseObjectAuditAlarm # @ stub NtCompactKeys @@ -175,7 +175,7 @@ @ stdcall -syscall NtCreateNamedPipeFile(ptr long ptr ptr long long long long long long long long long ptr) @ stdcall NtCreatePagingFile(ptr ptr ptr ptr) @ stdcall NtCreatePort(ptr ptr long long ptr) -@ stdcall NtCreatePowerRequest(ptr ptr) +@ stdcall -syscall NtCreatePowerRequest(ptr ptr) @ stub NtCreateProcess # @ stub NtCreateProcessEx @ stub NtCreateProfile @@ -230,7 +230,7 @@ @ stub NtImpersonateClientOfPort @ stub NtImpersonateThread @ stub NtInitializeRegistry -@ stdcall NtInitiatePowerAction (long long long long) +@ stdcall -syscall NtInitiatePowerAction (long long long long) @ stdcall -syscall NtIsProcessInJob(long long) # @ stub NtIsSystemResumeAutomatic @ stdcall NtListenPort(ptr ptr) @@ -386,7 +386,7 @@ @ stub NtSetLowEventPair @ stub NtSetLowWaitHighEventPair @ stub NtSetLowWaitHighThread -@ stdcall NtSetPowerRequest(long long) +@ stdcall -syscall NtSetPowerRequest(long long) # @ stub NtSetQuotaInformationFile @ stdcall NtSetSecurityObject(long long ptr) @ stub NtSetSystemEnvironmentValue @@ -394,7 +394,7 @@ @ stdcall -syscall NtSetSystemInformation(long ptr long) @ stub NtSetSystemPowerState @ stdcall -syscall NtSetSystemTime(ptr ptr) -@ stdcall NtSetThreadExecutionState(long ptr) +@ stdcall -syscall NtSetThreadExecutionState(long ptr) @ stdcall -syscall NtSetTimer(long ptr ptr ptr long long ptr) @ stdcall -syscall NtSetTimerResolution(long long ptr) # @ stub NtSetUuidSeed @@ -1138,7 +1138,7 @@ @ stdcall -private -syscall ZwCancelIoFileEx(long ptr ptr) NtCancelIoFileEx @ stdcall -private -syscall ZwCancelTimer(long ptr) NtCancelTimer @ stdcall -private -syscall ZwClearEvent(long) NtClearEvent -@ stdcall -private ZwClearPowerRequest(long long) NtClearPowerRequest +@ stdcall -private -syscall ZwClearPowerRequest(long long) NtClearPowerRequest @ stdcall -private ZwClose(long) NtClose @ stub ZwCloseObjectAuditAlarm # @ stub ZwCompactKeys @@ -1163,7 +1163,7 @@ @ stdcall -private -syscall ZwCreateNamedPipeFile(ptr long ptr ptr long long long long long long long long long ptr) NtCreateNamedPipeFile @ stdcall -private ZwCreatePagingFile(ptr ptr ptr ptr) NtCreatePagingFile @ stdcall -private ZwCreatePort(ptr ptr long long ptr) NtCreatePort -@ stdcall -private ZwCreatePowerRequest(ptr ptr) NtCreatePowerRequest +@ stdcall -private -syscall ZwCreatePowerRequest(ptr ptr) NtCreatePowerRequest @ stub ZwCreateProcess # @ stub ZwCreateProcessEx @ stub ZwCreateProfile @@ -1217,7 +1217,7 @@ @ stub ZwImpersonateClientOfPort @ stub ZwImpersonateThread @ stub ZwInitializeRegistry -@ stdcall -private ZwInitiatePowerAction(long long long long) NtInitiatePowerAction +@ stdcall -private -syscall ZwInitiatePowerAction(long long long long) NtInitiatePowerAction @ stdcall -private -syscall ZwIsProcessInJob(long long) NtIsProcessInJob # @ stub ZwIsSystemResumeAutomatic @ stdcall -private ZwListenPort(ptr ptr) NtListenPort @@ -1373,7 +1373,7 @@ @ stub ZwSetLowEventPair @ stub ZwSetLowWaitHighEventPair @ stub ZwSetLowWaitHighThread -@ stdcall -private ZwSetPowerRequest(long long) NtSetPowerRequest +@ stdcall -private -syscall ZwSetPowerRequest(long long) NtSetPowerRequest # @ stub ZwSetQuotaInformationFile @ stdcall -private ZwSetSecurityObject(long long ptr) NtSetSecurityObject @ stub ZwSetSystemEnvironmentValue @@ -1381,7 +1381,7 @@ @ stdcall -private -syscall ZwSetSystemInformation(long ptr long) NtSetSystemInformation @ stub ZwSetSystemPowerState @ stdcall -private -syscall ZwSetSystemTime(ptr ptr) NtSetSystemTime -@ stdcall ZwSetThreadExecutionState(long ptr) NtSetThreadExecutionState +@ stdcall -private -syscall ZwSetThreadExecutionState(long ptr) NtSetThreadExecutionState @ stdcall -private -syscall ZwSetTimer(long ptr ptr ptr long long ptr) NtSetTimer @ stdcall -private -syscall ZwSetTimerResolution(long long ptr) NtSetTimerResolution # @ stub ZwSetUuidSeed diff --git a/dlls/ntdll/unix/system.c b/dlls/ntdll/unix/system.c index 80478c59ed..7f85b41645 100644 --- a/dlls/ntdll/unix/system.c +++ b/dlls/ntdll/unix/system.c @@ -3019,3 +3019,58 @@ NTSTATUS WINAPI NtPowerInformation( POWER_INFORMATION_LEVEL level, void *input, return STATUS_NOT_IMPLEMENTED; } } + + +/****************************************************************************** + * NtInitiatePowerAction (NTDLL.@) + */ +NTSTATUS WINAPI NtInitiatePowerAction( POWER_ACTION action, SYSTEM_POWER_STATE state, + ULONG flags, BOOLEAN async ) +{ + FIXME( "(%d,%d,0x%08x,%d),stub\n", action, state, flags, async ); + return STATUS_NOT_IMPLEMENTED; +} + + +/****************************************************************************** + * NtCreatePowerRequest (NTDLL.@) + */ +NTSTATUS WINAPI NtCreatePowerRequest( HANDLE *handle, COUNTED_REASON_CONTEXT *context ) +{ + FIXME( "(%p, %p): stub\n", handle, context ); + return STATUS_NOT_IMPLEMENTED; +} + + +/****************************************************************************** + * NtSetPowerRequest (NTDLL.@) + */ +NTSTATUS WINAPI NtSetPowerRequest( HANDLE handle, POWER_REQUEST_TYPE type ) +{ + FIXME( "(%p, %u): stub\n", handle, type ); + return STATUS_NOT_IMPLEMENTED; +} + + +/****************************************************************************** + * NtClearPowerRequest (NTDLL.@) + */ +NTSTATUS WINAPI NtClearPowerRequest( HANDLE handle, POWER_REQUEST_TYPE type ) +{ + FIXME( "(%p, %u): stub\n", handle, type ); + return STATUS_NOT_IMPLEMENTED; +} + + +/****************************************************************************** + * NtSetThreadExecutionState (NTDLL.@) + */ +NTSTATUS WINAPI NtSetThreadExecutionState( EXECUTION_STATE new_state, EXECUTION_STATE *old_state ) +{ + static EXECUTION_STATE current = ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED | ES_USER_PRESENT; + + WARN( "(0x%x, %p): stub, harmless.\n", new_state, old_state ); + *old_state = current; + if (!(current & ES_CONTINUOUS) || (new_state & ES_CONTINUOUS)) current = new_state; + return STATUS_SUCCESS; +}
1
0
0
0
Alexandre Julliard : ntdll: Move some timer stub functions to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: e7c60141d616b609b99e59a19375fc9759c3e4fa URL:
https://source.winehq.org/git/wine.git/?a=commit;h=e7c60141d616b609b99e59a1…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:52:26 2020 +0200 ntdll: Move some timer stub functions to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/nt.c | 12 ------------ dlls/ntdll/ntdll.spec | 12 ++++++------ dlls/ntdll/sync.c | 33 --------------------------------- dlls/ntdll/unix/sync.c | 30 ++++++++++++++++++++++++++++++ 4 files changed, 36 insertions(+), 51 deletions(-) diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c index ed2f60333a..d27dca4be0 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -826,18 +826,6 @@ NTSTATUS WINAPI NtReplyWaitReceivePort( * Misc */ - /****************************************************************************** - * NtSetIntervalProfile [NTDLL.@] - * ZwSetIntervalProfile [NTDLL.@] - */ -NTSTATUS WINAPI NtSetIntervalProfile( - ULONG Interval, - KPROFILE_SOURCE Source) -{ - FIXME("%u,%d\n", Interval, Source); - return STATUS_SUCCESS; -} - /*********************************************************************** * RtlIsProcessorFeaturePresent [NTDLL.@] */ diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec index f6d8811ba8..22cb9d1942 100644 --- a/dlls/ntdll/ntdll.spec +++ b/dlls/ntdll/ntdll.spec @@ -320,7 +320,7 @@ @ stdcall -syscall NtQuerySystemInformationEx(long ptr long ptr long ptr) @ stdcall -syscall NtQuerySystemTime(ptr) @ stdcall -syscall NtQueryTimer(ptr long ptr long ptr) -@ stdcall NtQueryTimerResolution(ptr ptr ptr) +@ stdcall -syscall NtQueryTimerResolution(ptr ptr ptr) @ stdcall -syscall NtQueryValueKey(long ptr long ptr long ptr) @ stdcall -syscall NtQueryVirtualMemory(long ptr long ptr long ptr) @ stdcall -syscall NtQueryVolumeInformationFile(long ptr ptr long long) @@ -380,7 +380,7 @@ @ stdcall -syscall NtSetInformationProcess(long long ptr long) @ stdcall -syscall NtSetInformationThread(long long ptr long) @ stdcall NtSetInformationToken(long long ptr long) -@ stdcall NtSetIntervalProfile(long long) +@ stdcall -syscall NtSetIntervalProfile(long long) @ stdcall -syscall NtSetIoCompletion(ptr long long long long) @ stdcall -syscall NtSetLdtEntries(long int64 long int64) @ stub NtSetLowEventPair @@ -396,7 +396,7 @@ @ stdcall -syscall NtSetSystemTime(ptr ptr) @ stdcall NtSetThreadExecutionState(long ptr) @ stdcall -syscall NtSetTimer(long ptr ptr ptr long long ptr) -@ stdcall NtSetTimerResolution(long long ptr) +@ stdcall -syscall NtSetTimerResolution(long long ptr) # @ stub NtSetUuidSeed @ stdcall -syscall NtSetValueKey(long ptr long long ptr long) @ stdcall -syscall NtSetVolumeInformationFile(long ptr ptr long long) @@ -1307,7 +1307,7 @@ @ stdcall -private -syscall ZwQuerySystemInformationEx(long ptr long ptr long ptr) NtQuerySystemInformationEx @ stdcall -private -syscall ZwQuerySystemTime(ptr) NtQuerySystemTime @ stdcall -private -syscall ZwQueryTimer(ptr long ptr long ptr) NtQueryTimer -@ stdcall -private ZwQueryTimerResolution(ptr ptr ptr) NtQueryTimerResolution +@ stdcall -private -syscall ZwQueryTimerResolution(ptr ptr ptr) NtQueryTimerResolution @ stdcall -private -syscall ZwQueryValueKey(long ptr long ptr long ptr) NtQueryValueKey @ stdcall -private -syscall ZwQueryVirtualMemory(long ptr long ptr long ptr) NtQueryVirtualMemory @ stdcall -private -syscall ZwQueryVolumeInformationFile(long ptr ptr long long) NtQueryVolumeInformationFile @@ -1367,7 +1367,7 @@ @ stdcall -private -syscall ZwSetInformationProcess(long long ptr long) NtSetInformationProcess @ stdcall -private -syscall ZwSetInformationThread(long long ptr long) NtSetInformationThread @ stdcall -private ZwSetInformationToken(long long ptr long) NtSetInformationToken -@ stdcall -private ZwSetIntervalProfile(long long) NtSetIntervalProfile +@ stdcall -private -syscall ZwSetIntervalProfile(long long) NtSetIntervalProfile @ stdcall -private -syscall ZwSetIoCompletion(ptr long long long long) NtSetIoCompletion @ stdcall -private -syscall ZwSetLdtEntries(long int64 long int64) NtSetLdtEntries @ stub ZwSetLowEventPair @@ -1383,7 +1383,7 @@ @ stdcall -private -syscall ZwSetSystemTime(ptr ptr) NtSetSystemTime @ stdcall ZwSetThreadExecutionState(long ptr) NtSetThreadExecutionState @ stdcall -private -syscall ZwSetTimer(long ptr ptr ptr long long ptr) NtSetTimer -@ stdcall -private ZwSetTimerResolution(long long ptr) NtSetTimerResolution +@ stdcall -private -syscall ZwSetTimerResolution(long long ptr) NtSetTimerResolution # @ stub ZwSetUuidSeed @ stdcall -private -syscall ZwSetValueKey(long ptr long long ptr long) NtSetValueKey @ stdcall -private -syscall ZwSetVolumeInformationFile(long ptr ptr long long) NtSetVolumeInformationFile diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c index b5768f244d..8aa36c75eb 100644 --- a/dlls/ntdll/sync.c +++ b/dlls/ntdll/sync.c @@ -37,8 +37,6 @@ #include "wine/debug.h" #include "ntdll_misc.h" -WINE_DEFAULT_DEBUG_CHANNEL(sync); - /* creates a struct security_descriptor and contained information in one contiguous piece of memory */ NTSTATUS alloc_object_attributes( const OBJECT_ATTRIBUTES *attr, struct object_attributes **ret, data_size_t *ret_len ) @@ -122,37 +120,6 @@ NTSTATUS alloc_object_attributes( const OBJECT_ATTRIBUTES *attr, struct object_a return STATUS_SUCCESS; } -/* - * Timers - */ - -/****************************************************************************** - * NtQueryTimerResolution [NTDLL.@] - */ -NTSTATUS WINAPI NtQueryTimerResolution(OUT ULONG* min_resolution, - OUT ULONG* max_resolution, - OUT ULONG* current_resolution) -{ - FIXME("(%p,%p,%p), stub!\n", - min_resolution, max_resolution, current_resolution); - - return STATUS_NOT_IMPLEMENTED; -} - -/****************************************************************************** - * NtSetTimerResolution [NTDLL.@] - */ -NTSTATUS WINAPI NtSetTimerResolution(IN ULONG resolution, - IN BOOLEAN set_resolution, - OUT ULONG* current_resolution ) -{ - FIXME("(%u,%u,%p), stub!\n", - resolution, set_resolution, current_resolution); - - return STATUS_NOT_IMPLEMENTED; -} - - /****************************************************************** * RtlRunOnceInitialize (NTDLL.@) diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c index 7dda01923c..cdfb8295c0 100644 --- a/dlls/ntdll/unix/sync.c +++ b/dlls/ntdll/unix/sync.c @@ -1424,6 +1424,36 @@ NTSTATUS WINAPI NtSetSystemTime( const LARGE_INTEGER *new, LARGE_INTEGER *old ) } +/*********************************************************************** + * NtQueryTimerResolution (NTDLL.@) + */ +NTSTATUS WINAPI NtQueryTimerResolution( ULONG *min_res, ULONG *max_res, ULONG *current_res ) +{ + FIXME( "(%p,%p,%p), stub!\n", min_res, max_res, current_res ); + return STATUS_NOT_IMPLEMENTED; +} + + +/*********************************************************************** + * NtSetTimerResolution (NTDLL.@) + */ +NTSTATUS WINAPI NtSetTimerResolution( ULONG res, BOOLEAN set, ULONG *current_res ) +{ + FIXME( "(%u,%u,%p), stub!\n", res, set, current_res ); + return STATUS_NOT_IMPLEMENTED; +} + + +/****************************************************************************** + * NtSetIntervalProfile (NTDLL.@) + */ +NTSTATUS WINAPI NtSetIntervalProfile( ULONG interval, KPROFILE_SOURCE source ) +{ + FIXME( "%u,%d\n", interval, source ); + return STATUS_SUCCESS; +} + + /****************************************************************************** * NtGetTickCount (NTDLL.@) */
1
0
0
0
Alexandre Julliard : ntdll: Move some system stub functions to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 398cfe48079ce02f0f13f62273b31f5ee0fd1a4b URL:
https://source.winehq.org/git/wine.git/?a=commit;h=398cfe48079ce02f0f13f622…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:49:51 2020 +0200 ntdll: Move some system stub functions to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/env.c | 22 -------------------- dlls/ntdll/nt.c | 32 ---------------------------- dlls/ntdll/ntdll.spec | 20 +++++++++--------- dlls/ntdll/unix/system.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 64 insertions(+), 64 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=398cfe48079ce02f0f13…
1
0
0
0
Alexandre Julliard : ntdll: Move the atom system calls to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 0eae5d3abc64e6496df5d7d7b36944e0cfada76e URL:
https://source.winehq.org/git/wine.git/?a=commit;h=0eae5d3abc64e6496df5d7d7…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:47:44 2020 +0200 ntdll: Move the atom system calls to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/atom.c | 143 -------------------------------------- dlls/ntdll/ntdll.spec | 16 ++--- dlls/ntdll/unix/sync.c | 182 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 190 insertions(+), 151 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=0eae5d3abc64e6496df5…
1
0
0
0
Alexandre Julliard : ntdll: Move more object manager functions to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 76e48978a95deed5eb5fa601486648e3665d21ad URL:
https://source.winehq.org/git/wine.git/?a=commit;h=76e48978a95deed5eb5fa601…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:47:19 2020 +0200 ntdll: Move more object manager functions to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/ntdll.spec | 28 ++--- dlls/ntdll/ntdll_misc.h | 1 - dlls/ntdll/om.c | 304 ------------------------------------------------ dlls/ntdll/sync.c | 13 --- dlls/ntdll/unix/sync.c | 201 ++++++++++++++++++++++++++++++++ 5 files changed, 215 insertions(+), 332 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=76e48978a95deed5eb5f…
1
0
0
0
Alexandre Julliard : ntdll: Move the remaining file functions to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 28bf959c5c342faa956e718823bcabb06a4c4c30 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=28bf959c5c342faa956e7188…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:46:30 2020 +0200 ntdll: Move the remaining file functions to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/Makefile.in | 1 - dlls/ntdll/file.c | 237 ------------------------------------------------- dlls/ntdll/ntdll.spec | 24 ++--- dlls/ntdll/unix/file.c | 151 ++++++++++++++++++++++++++++++- 4 files changed, 161 insertions(+), 252 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=28bf959c5c342faa956e…
1
0
0
0
Alexandre Julliard : ntdll: Move the registry system calls to the Unix library.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 7053b7c615b44e7112ab8fb4c056206d32b6f1c9 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=7053b7c615b44e7112ab8fb4…
Author: Alexandre Julliard <julliard(a)winehq.org> Date: Fri Jul 17 11:46:15 2020 +0200 ntdll: Move the registry system calls to the Unix library. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/ntdll/Makefile.in | 1 + dlls/ntdll/ntdll.spec | 104 +++--- dlls/ntdll/reg.c | 795 --------------------------------------------- dlls/ntdll/unix/registry.c | 778 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 831 insertions(+), 847 deletions(-) Diff:
https://source.winehq.org/git/wine.git/?a=commitdiff;h=7053b7c615b44e7112ab…
1
0
0
0
Serge Gautherie : winapi_test: Add/remove headers for urlmon test.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 1960df8a2ade8249479b7853a5199e8873c45dd1 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=1960df8a2ade8249479b7853…
Author: Serge Gautherie <winehq-git_serge_180711(a)gautherie.fr> Date: Fri Jul 10 04:58:02 2020 +0200 winapi_test: Add/remove headers for urlmon test. Signed-off-by: Serge Gautherie <winehq-git_serge_180711(a)gautherie.fr> Signed-off-by: Francois Gouget <fgouget(a)free.fr> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- tools/winapi/tests.dat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/winapi/tests.dat b/tools/winapi/tests.dat index 3f470d48e7..57a65e1b22 100644 --- a/tools/winapi/tests.dat +++ b/tools/winapi/tests.dat @@ -1261,9 +1261,9 @@ Unit tests for data structure packing %header -basetsd.h winnt.h windef.h +guiddef.h urlmon.h %include
1
0
0
0
Shawn M. Chapla : gdiplus: Add DrawDriverString serialization.
by Alexandre Julliard
17 Jul '20
17 Jul '20
Module: wine Branch: master Commit: 71bb5cd52a7e190da5b1f6276dab7bb71a9544e7 URL:
https://source.winehq.org/git/wine.git/?a=commit;h=71bb5cd52a7e190da5b1f627…
Author: Shawn M. Chapla <schapla(a)codeweavers.com> Date: Wed Jul 15 18:26:54 2020 -0400 gdiplus: Add DrawDriverString serialization. Signed-off-by: Shawn M. Chapla <schapla(a)codeweavers.com> Signed-off-by: Esme Povirk <esme(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/gdiplus/gdiplus_private.h | 3 + dlls/gdiplus/graphics.c | 4 + dlls/gdiplus/metafile.c | 182 ++++++++++++++++++++++++++++++++++++++--- dlls/gdiplus/tests/metafile.c | 14 ++-- 4 files changed, 185 insertions(+), 18 deletions(-) diff --git a/dlls/gdiplus/gdiplus_private.h b/dlls/gdiplus/gdiplus_private.h index 2ceaeade01..1b2de4e8f4 100644 --- a/dlls/gdiplus/gdiplus_private.h +++ b/dlls/gdiplus/gdiplus_private.h @@ -104,6 +104,9 @@ extern GpStatus METAFILE_DrawImagePointsRect(GpMetafile* metafile, GpImage *imag extern GpStatus METAFILE_AddSimpleProperty(GpMetafile *metafile, SHORT prop, SHORT val) DECLSPEC_HIDDEN; extern GpStatus METAFILE_DrawPath(GpMetafile *metafile, GpPen *pen, GpPath *path) DECLSPEC_HIDDEN; extern GpStatus METAFILE_FillPath(GpMetafile *metafile, GpBrush *brush, GpPath *path) DECLSPEC_HIDDEN; +extern GpStatus METAFILE_DrawDriverString(GpMetafile *metafile, GDIPCONST UINT16 *text, INT length, + GDIPCONST GpFont *font, GDIPCONST GpStringFormat *format, GDIPCONST GpBrush *brush, + GDIPCONST PointF *positions, INT flags, GDIPCONST GpMatrix *matrix) DECLSPEC_HIDDEN; extern void METAFILE_Free(GpMetafile *metafile) DECLSPEC_HIDDEN; extern void calc_curve_bezier(const GpPointF *pts, REAL tension, REAL *x1, diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index 6c50d2d56c..5194719fd6 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -7427,6 +7427,10 @@ static GpStatus draw_driver_string(GpGraphics *graphics, GDIPCONST UINT16 *text, if (length == -1) length = lstrlenW(text); + if (graphics->image && graphics->image->type == ImageTypeMetafile) + return METAFILE_DrawDriverString((GpMetafile*)graphics->image, text, length, font, + format, brush, positions, flags, matrix); + if (graphics->hdc && !graphics->alpha_hdc && brush->bt == BrushTypeSolidColor && (((GpSolidFill*)brush)->color & 0xff000000) == 0xff000000) diff --git a/dlls/gdiplus/metafile.c b/dlls/gdiplus/metafile.c index d25278d115..cedffb23ca 100644 --- a/dlls/gdiplus/metafile.c +++ b/dlls/gdiplus/metafile.c @@ -378,6 +378,17 @@ typedef struct EmfPlusImageAttributes DWORD Reserved2; } EmfPlusImageAttributes; +typedef struct EmfPlusFont +{ + DWORD Version; + float EmSize; + DWORD SizeUnit; + DWORD FontStyleFlags; + DWORD Reserved; + DWORD Length; + WCHAR FamilyName[1]; +} EmfPlusFont; + typedef struct EmfPlusObject { EmfPlusRecordHeader Header; @@ -389,6 +400,7 @@ typedef struct EmfPlusObject EmfPlusRegion region; EmfPlusImage image; EmfPlusImageAttributes image_attributes; + EmfPlusFont font; } ObjectData; } EmfPlusObject; @@ -537,17 +549,6 @@ typedef struct EmfPlusFillPie } RectData; } EmfPlusFillPie; -typedef struct EmfPlusFont -{ - DWORD Version; - float EmSize; - DWORD SizeUnit; - DWORD FontStyleFlags; - DWORD Reserved; - DWORD Length; - WCHAR FamilyName[1]; -} EmfPlusFont; - typedef struct EmfPlusDrawDriverString { EmfPlusRecordHeader Header; @@ -4643,3 +4644,162 @@ GpStatus METAFILE_FillPath(GpMetafile *metafile, GpBrush *brush, GpPath *path) METAFILE_WriteRecords(metafile); return Ok; } + +static GpStatus METAFILE_AddFontObject(GpMetafile *metafile, GDIPCONST GpFont *font, DWORD *id) +{ + EmfPlusObject *object_record; + EmfPlusFont *font_record; + GpStatus stat; + INT fn_len; + INT style; + + *id = -1; + + if (metafile->metafile_type != MetafileTypeEmfPlusOnly && + metafile->metafile_type != MetafileTypeEmfPlusDual) + return Ok; + + /* The following cast is ugly, but GdipGetFontStyle does treat + its first parameter as const. */ + stat = GdipGetFontStyle((GpFont*)font, &style); + if (stat != Ok) + return stat; + + fn_len = lstrlenW(font->family->FamilyName); + stat = METAFILE_AllocateRecord(metafile, + FIELD_OFFSET(EmfPlusObject, ObjectData.font.FamilyName[(fn_len + 1) & ~1]), + (void**)&object_record); + if (stat != Ok) + return stat; + + *id = METAFILE_AddObjectId(metafile); + + object_record->Header.Type = EmfPlusRecordTypeObject; + object_record->Header.Flags = *id | ObjectTypeFont << 8; + + font_record = &object_record->ObjectData.font; + font_record->Version = VERSION_MAGIC2; + font_record->EmSize = font->emSize; + font_record->SizeUnit = font->unit; + font_record->FontStyleFlags = style; + font_record->Reserved = 0; + font_record->Length = fn_len; + + memcpy(font_record->FamilyName, font->family->FamilyName, + fn_len * sizeof(*font->family->FamilyName)); + + return Ok; +} + +GpStatus METAFILE_DrawDriverString(GpMetafile *metafile, GDIPCONST UINT16 *text, INT length, + GDIPCONST GpFont *font, GDIPCONST GpStringFormat *format, GDIPCONST GpBrush *brush, + GDIPCONST PointF *positions, INT flags, GDIPCONST GpMatrix *matrix) +{ + DWORD brush_id; + DWORD font_id; + DWORD alloc_size; + GpStatus stat; + EmfPlusDrawDriverString *draw_string_record; + BYTE *cursor; + BOOL inline_color; + BOOL include_matrix = FALSE; + + if (length <= 0) + return InvalidParameter; + + if (metafile->metafile_type != MetafileTypeEmfPlusOnly && + metafile->metafile_type != MetafileTypeEmfPlusDual) + { + FIXME("metafile type not supported: %i\n", metafile->metafile_type); + return NotImplemented; + } + + stat = METAFILE_AddFontObject(metafile, font, &font_id); + if (stat != Ok) + return stat; + + inline_color = (brush->bt == BrushTypeSolidColor); + if (!inline_color) + { + stat = METAFILE_AddBrushObject(metafile, brush, &brush_id); + if (stat != Ok) + return stat; + } + + if (matrix) + { + BOOL identity; + + stat = GdipIsMatrixIdentity(matrix, &identity); + if (stat != Ok) + return stat; + + include_matrix = !identity; + } + + alloc_size = FIELD_OFFSET(EmfPlusDrawDriverString, VariableData) + + length * (sizeof(*text) + sizeof(*positions)); + + if (include_matrix) + alloc_size += sizeof(*matrix); + + /* Pad record to DWORD alignment. */ + alloc_size = (alloc_size + 3) & ~3; + + stat = METAFILE_AllocateRecord(metafile, alloc_size, (void**)&draw_string_record); + if (stat != Ok) + return stat; + + draw_string_record->Header.Type = EmfPlusRecordTypeDrawDriverString; + draw_string_record->Header.Flags = font_id; + draw_string_record->DriverStringOptionsFlags = flags; + draw_string_record->MatrixPresent = include_matrix; + draw_string_record->GlyphCount = length; + + if (inline_color) + { + draw_string_record->Header.Flags |= 0x8000; + draw_string_record->brush.Color = ((GpSolidFill*)brush)->color; + } + else + draw_string_record->brush.BrushId = brush_id; + + cursor = &draw_string_record->VariableData[0]; + + memcpy(cursor, text, length * sizeof(*text)); + cursor += length * sizeof(*text); + + if (flags & DriverStringOptionsRealizedAdvance) + { + static BOOL fixme_written = FALSE; + + /* Native never writes DriverStringOptionsRealizedAdvance. Instead, + in the case of RealizedAdvance, each glyph position is computed + and serialized. + + While native GDI+ is capable of playing back metafiles with this + flag set, it is possible that some application might rely on + metafiles produced from GDI+ not setting this flag. Ideally we + would also compute the position of each glyph here, serialize those + values, and not set DriverStringOptionsRealizedAdvance. */ + if (!fixme_written) + { + fixme_written = TRUE; + FIXME("serializing RealizedAdvance flag and single GlyphPos with padding\n"); + } + + *((PointF*)cursor) = *positions; + } + else + memcpy(cursor, positions, length * sizeof(*positions)); + + if (include_matrix) + { + cursor += length * sizeof(*positions); + memcpy(cursor, matrix, sizeof(*matrix)); + } + + METAFILE_WriteRecords(metafile); + + return Ok; +} diff --git a/dlls/gdiplus/tests/metafile.c b/dlls/gdiplus/tests/metafile.c index 986989bb1c..371a3c21b4 100644 --- a/dlls/gdiplus/tests/metafile.c +++ b/dlls/gdiplus/tests/metafile.c @@ -2956,11 +2956,11 @@ static void test_restoredc(void) static const emfplus_record drawdriverstring_records[] = { { EMR_HEADER }, { EmfPlusRecordTypeHeader }, - { EmfPlusRecordTypeObject, ObjectTypeFont << 8, 1, 0 }, - { EmfPlusRecordTypeDrawDriverString, 0x8000, 1, 0 }, - { EmfPlusRecordTypeObject, (ObjectTypeFont << 8) | 1, 1 }, - { EmfPlusRecordTypeObject, (ObjectTypeBrush << 8) | 2, 1, 1 }, - { EmfPlusRecordTypeDrawDriverString, 0x1, 1, 1 }, + { EmfPlusRecordTypeObject, ObjectTypeFont << 8 }, + { EmfPlusRecordTypeDrawDriverString, 0x8000 }, + { EmfPlusRecordTypeObject, (ObjectTypeFont << 8) | 1 }, + { EmfPlusRecordTypeObject, (ObjectTypeBrush << 8) | 2 }, + { EmfPlusRecordTypeDrawDriverString, 0x1 }, { EmfPlusRecordTypeEndOfFile }, { EMR_EOF }, { 0 } @@ -3022,14 +3022,14 @@ static void test_drawdriverstring(void) stat = GdipDrawDriverString(graphics, L"Test", 4, solidfont, solidbrush, solidpos, DriverStringOptionsCmapLookup, matrix); - todo_wine expect(Ok, stat); + expect(Ok, stat); stat = GdipSetMatrixElements(matrix, 1.5, 0.0, 0.0, 1.5, 0.0, 0.0); expect(Ok, stat); stat = GdipDrawDriverString(graphics, L"Test ", 5, hatchfont, hatchbrush, &hatchpos, DriverStringOptionsCmapLookup|DriverStringOptionsRealizedAdvance, matrix); - todo_wine expect(Ok, stat); + expect(Ok, stat); stat = GdipDeleteGraphics(graphics); graphics = NULL;
1
0
0
0
← Newer
1
...
32
33
34
35
36
37
38
...
83
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
Results per page:
10
25
50
100
200