mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
Add Dynamic DST patches to fix issues with Israel timezone.
This commit is contained in:
parent
845a4dd675
commit
4dea282c90
@ -18,9 +18,11 @@ These patches fix the following Wine bugs:
|
||||
* Implement an Arial replacement font ([Wine Bug #32323](http://bugs.winehq.org/show_bug.cgi?id=32323 "Netflix (Silverlight 4.x) and several .NET Framework 3.x/4.0 WPF apps require either Arial or Verdana to be installed"))
|
||||
* Support for interface change notifications ([Wine Bug #32328](http://bugs.winehq.org/show_bug.cgi?id=32328 "Many .NET and Silverlight applications require SIO_ADDRESS_LIST_CHANGE for interface change notifications"))
|
||||
* Support for inherited file ACLs ([Wine Bug #34406](http://bugs.winehq.org/show_bug.cgi?id=34406 "Finale Notepad 2012 doesn't copy/create user files on program start"))
|
||||
* Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](http://bugs.winehq.org/show_bug.cgi?id=36374 "Israel timezone handled incorrectly"))
|
||||
|
||||
Besides that the following additional changes are included:
|
||||
|
||||
* Add support for Dynamic DST (daylight saving time) information in registry
|
||||
* Lockfree algorithm for filedescriptor cache (improves file access speed)
|
||||
* Other Pipelight specific enhancements
|
||||
* Reduced SetTimer minimum value from 10 ms to 5 ms (improves Silverlight framerates)
|
||||
|
@ -1,3 +0,0 @@
|
||||
Revision: 1
|
||||
Author: Joris van der Wel
|
||||
Title: Implement passing ACLs to CreateProcess.
|
@ -1,3 +0,0 @@
|
||||
Revision: 1
|
||||
Author: Erich E. Hoover
|
||||
Title: Fix possible race conditions in strmbase/quartz.
|
@ -1,3 +0,0 @@
|
||||
Revision: 1
|
||||
Author: Erich E. Hoover
|
||||
Title: Return correct IMediaSeeking stream positions in quartz.
|
@ -0,0 +1,74 @@
|
||||
From b72d6c2bb191c98187193ea00ccce6eed0486a7b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Thu, 24 Jul 2014 01:27:16 +0200
|
||||
Subject: ntdll: Add support for Dynamic DST (daylight saving time)
|
||||
information in registry.
|
||||
|
||||
---
|
||||
dlls/ntdll/time.c | 34 +++++++++++++++++++++++++++++-----
|
||||
1 file changed, 29 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/ntdll/time.c b/dlls/ntdll/time.c
|
||||
index 5ec5a1c..df3bedd 100644
|
||||
--- a/dlls/ntdll/time.c
|
||||
+++ b/dlls/ntdll/time.c
|
||||
@@ -598,11 +598,23 @@ static void find_reg_tz_info(RTL_TIME_ZONE_INFORMATION *tzi)
|
||||
'W','i','n','d','o','w','s',' ','N','T','\\',
|
||||
'C','u','r','r','e','n','t','V','e','r','s','i','o','n','\\',
|
||||
'T','i','m','e',' ','Z','o','n','e','s',0 };
|
||||
+ static const WCHAR Dynamic_DstW[] = { 'D','y','n','a','m','i','c',' ','D','S','T',0 };
|
||||
+ static const WCHAR fmtW[] = { '%','d',0 };
|
||||
HANDLE hkey;
|
||||
ULONG idx;
|
||||
- OBJECT_ATTRIBUTES attr;
|
||||
- UNICODE_STRING nameW;
|
||||
- WCHAR buf[128];
|
||||
+ OBJECT_ATTRIBUTES attr, attrDynamic;
|
||||
+ UNICODE_STRING nameW, nameDynamicW;
|
||||
+ WCHAR buf[128], yearW[16];
|
||||
+
|
||||
+ sprintfW(yearW, fmtW, tzi->DaylightDate.wYear);
|
||||
+
|
||||
+ attrDynamic.Length = sizeof(attrDynamic);
|
||||
+ attrDynamic.RootDirectory = 0; /* will be replaced later */
|
||||
+ attrDynamic.ObjectName = &nameDynamicW;
|
||||
+ attrDynamic.Attributes = 0;
|
||||
+ attrDynamic.SecurityDescriptor = NULL;
|
||||
+ attrDynamic.SecurityQualityOfService = NULL;
|
||||
+ RtlInitUnicodeString(&nameDynamicW, Dynamic_DstW);
|
||||
|
||||
attr.Length = sizeof(attr);
|
||||
attr.RootDirectory = 0;
|
||||
@@ -628,7 +640,9 @@ static void find_reg_tz_info(RTL_TIME_ZONE_INFORMATION *tzi)
|
||||
static const WCHAR dltW[] = { 'D','l','t',0 };
|
||||
static const WCHAR tziW[] = { 'T','Z','I',0 };
|
||||
RTL_TIME_ZONE_INFORMATION reg_tzi;
|
||||
- HANDLE hSubkey;
|
||||
+ HANDLE hSubkey, hSubkeyDynamicDST;
|
||||
+ BOOL is_dynamic = FALSE;
|
||||
+
|
||||
struct tz_reg_data
|
||||
{
|
||||
LONG bias;
|
||||
@@ -660,7 +674,17 @@ static void find_reg_tz_info(RTL_TIME_ZONE_INFORMATION *tzi)
|
||||
|
||||
get_value(hSubkey, stdW, REG_SZ, reg_tzi.StandardName, sizeof(reg_tzi.StandardName));
|
||||
get_value(hSubkey, dltW, REG_SZ, reg_tzi.DaylightName, sizeof(reg_tzi.DaylightName));
|
||||
- get_value(hSubkey, tziW, REG_BINARY, &tz_data, sizeof(tz_data));
|
||||
+
|
||||
+ /* Check for Dynamic DST entry first */
|
||||
+ attrDynamic.RootDirectory = hSubkey;
|
||||
+ if (!NtOpenKey(&hSubkeyDynamicDST, KEY_READ, &attrDynamic))
|
||||
+ {
|
||||
+ is_dynamic = reg_query_value(hSubkeyDynamicDST, yearW, REG_BINARY, &tz_data, sizeof(tz_data));
|
||||
+ NtClose(hSubkeyDynamicDST);
|
||||
+ }
|
||||
+
|
||||
+ if (!is_dynamic)
|
||||
+ get_value(hSubkey, tziW, REG_BINARY, &tz_data, sizeof(tz_data));
|
||||
|
||||
#undef get_value
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -0,0 +1,47 @@
|
||||
From 415449fb2194136efaeed4b978b5e3a7617ae43b Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sat, 26 Jul 2014 00:44:03 +0200
|
||||
Subject: wine.inf: Add Dynamic DST exceptions for Israel Standard Time.
|
||||
|
||||
---
|
||||
loader/wine.inf.in | 24 ++++++++++++++++++++++++
|
||||
1 file changed, 24 insertions(+)
|
||||
|
||||
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
|
||||
index 25bc098..594ad60 100644
|
||||
--- a/loader/wine.inf.in
|
||||
+++ b/loader/wine.inf.in
|
||||
@@ -2756,6 +2756,30 @@ HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time,"Display",,"Asia/Jerusal
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time,"Dlt",,"Israel Daylight Time"
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time,"Std",,"Israel Standard Time"
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time,"TZI",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,00,00,00,00,00,00,00,03,00,05,00,05,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2017",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,e1,07,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,e1,07,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2018",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,e2,07,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,e2,07,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2023",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,e7,07,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,e7,07,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2028",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,ec,07,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,ec,07,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2029",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,ed,07,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,ed,07,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2034",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,f2,07,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,f2,07,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2035",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,f3,07,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,f3,07,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2040",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,f8,07,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,f8,07,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2045",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,fd,07,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,fd,07,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2046",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,fe,07,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,fe,07,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2051",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,03,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,03,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2056",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,08,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,08,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2057",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,09,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,09,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2062",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,0e,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,0e,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2063",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,0f,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,0f,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2068",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,14,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,14,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2073",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,19,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,19,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2074",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,1a,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,1a,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2079",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,1f,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,1f,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2084",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,24,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,24,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2085",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,25,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,25,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2090",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,2a,08,0a,00,00,00,1d,00,02,00,00,00,00,00,00,00,2a,08,03,00,05,00,18,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2091",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,2b,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,2b,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
+HKLM,%CurrentVersionNT%\Time Zones\Israel Standard Time\Dynamic DST,"2096",1,88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,30,08,0a,00,00,00,1c,00,02,00,00,00,00,00,00,00,30,08,03,00,05,00,17,00,02,00,00,00,00,00,00,00
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Jordan Standard Time,"Display",,"Asia/Amman"
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Jordan Standard Time,"Dlt",,"Jordan Daylight Time"
|
||||
HKLM,%CurrentVersionNT%\Time Zones\Jordan Standard Time,"Std",,"Jordan Standard Time"
|
||||
--
|
||||
1.7.9.5
|
||||
|
10
patches/19-ntdll-Dynamic_DST/definition
Normal file
10
patches/19-ntdll-Dynamic_DST/definition
Normal file
@ -0,0 +1,10 @@
|
||||
Author: Michael Müller
|
||||
Subject: Add support for Dynamic DST (daylight saving time) information in registry.
|
||||
Revision: 1
|
||||
|
||||
Author: Sebastian Lackner
|
||||
Subject: Add Dynamic DST exceptions for Israel Standard Time.
|
||||
Revision: 1
|
||||
|
||||
Fixes: Add support for Dynamic DST (daylight saving time) information in registry
|
||||
Fixes: [36374] Add Dynamic DST exceptions for Israel Standard Time
|
@ -22,6 +22,7 @@ PATCHLIST := 00-Commandline.ok \
|
||||
16-server-CreateProcess_ACLs.ok \
|
||||
17-strmbase-Lock_Race_Conditions.ok \
|
||||
18-quartz-MediaSeeking_Positions.ok \
|
||||
19-ntdll-Dynamic_DST.ok \
|
||||
97-Pipelight.ok \
|
||||
98-Miscellaneous.ok
|
||||
|
||||
@ -395,6 +396,26 @@ clean:
|
||||
echo "+ { \"18-quartz-MediaSeeking_Positions\", \"Erich E. Hoover\", \"Return correct IMediaSeeking stream positions in quartz.\" },"; \
|
||||
) > 18-quartz-MediaSeeking_Positions.ok
|
||||
|
||||
# Patchset 19-ntdll-Dynamic_DST
|
||||
# |
|
||||
# | Included patches:
|
||||
# | * Add support for Dynamic DST (daylight saving time) information in registry. [by Michael Müller]
|
||||
# | * Add Dynamic DST exceptions for Israel Standard Time. [by Sebastian Lackner]
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#36374] Israel timezone handled incorrectly
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/ntdll/time.c, loader/wine.inf.in
|
||||
# |
|
||||
19-ntdll-Dynamic_DST.ok:
|
||||
$(PATCH) < 19-ntdll-Dynamic_DST/0001-ntdll-Add-support-for-Dynamic-DST-daylight-saving-ti.patch
|
||||
$(PATCH) < 19-ntdll-Dynamic_DST/0002-wine.inf-Add-Dynamic-DST-exceptions-for-Israel-Stand.patch
|
||||
( \
|
||||
echo "+ { \"19-ntdll-Dynamic_DST\", \"Michael Müller\", \"Add support for Dynamic DST (daylight saving time) information in registry.\" },"; \
|
||||
echo "+ { \"19-ntdll-Dynamic_DST\", \"Sebastian Lackner\", \"Add Dynamic DST exceptions for Israel Standard Time.\" },"; \
|
||||
) > 19-ntdll-Dynamic_DST.ok
|
||||
|
||||
# Patchset 97-Pipelight
|
||||
# |
|
||||
# | Included patches:
|
||||
|
Loading…
Reference in New Issue
Block a user