Module: wine
Branch: master
Commit: ee2fc60c17f9fa72ad7041dc904f0d00486781b0
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ee2fc60c17f9fa72ad7041dc9…
Author: Juan Lang <juan.lang(a)gmail.com>
Date: Wed Oct 15 13:24:44 2008 -0700
crypt32: Fix remaining Win9x encoding test failures.
---
dlls/crypt32/tests/encode.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/crypt32/tests/encode.c b/dlls/crypt32/tests/encode.c
index c64386d..d568eb5 100644
--- a/dlls/crypt32/tests/encode.c
+++ b/dlls/crypt32/tests/encode.c
@@ -6481,8 +6481,14 @@ static void test_encodeCMSSignerInfo(DWORD dwEncoding)
SetLastError(0xdeadbeef);
ret = pCryptEncodeObjectEx(dwEncoding, CMS_SIGNER_INFO, &info,
CRYPT_ENCODE_ALLOC_FLAG, NULL, (BYTE *)&buf, &size);
- ok(!ret && GetLastError() == E_INVALIDARG,
- "Expected E_INVALIDARG, got %08x\n", GetLastError());
+ ok(!ret, "Expected failure, got %d\n", ret);
+ if (!ret && GetLastError() == ERROR_FILE_NOT_FOUND)
+ {
+ skip("no CMS_SIGNER_INFO encode support\n");
+ return;
+ }
+ ok(GetLastError() == E_INVALIDARG,
+ "Expected E_INVALIDARG, got %08x\n", GetLastError());
/* To be encoded, a signer must have a valid cert ID, where a valid ID may
* be a key id or a issuer serial number with at least the issuer set, and
* the encoding must include PKCS_7_ASN_ENCODING.
Module: wine
Branch: master
Commit: f151180330bf8a25931d08eda63e385359cec1ce
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f151180330bf8a25931d08eda…
Author: Tobias Jakobi <liquid.acid(a)gmx.net>
Date: Thu Oct 9 20:10:01 2008 +0200
winex11: Remove acute/apostrophe from German keyboard layout tables.
---
dlls/winex11.drv/keyboard.c | 38 +++++++++++++++++++++++++-------------
1 files changed, 25 insertions(+), 13 deletions(-)
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index 99b16ed..f2366d2 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -242,16 +242,6 @@ static const WORD main_key_vkey_dvorak[MAIN_LEN] =
/* If Wine fails to match your new table, use WINEDEBUG=+key to find out why */
/* Remember to also add your new table to the layout index table far below! */
-/*** German Logitech Desktop Pro keyboard layout */
-static const char main_key_DE_logitech[MAIN_LEN][4] =
-{
- "^\xb0","1!","2\"","3\xa7","4$","5%","6&","7/{","8([","9)]","0=}","\xdf?\\","'`",
- "qQ@","wW","eE","rR","tT","zZ","uU","iI","oO","pP","\xfc\xdc","+*~",
- "aA","sS","dD","fF","gG","hH","jJ","kK","lL","\xf6\xd6","\xe4\xc4","#'",
- "yY","xX","cC","vV","bB","nN","mM",",;",".:","-_",
- "<>|"
-};
-
/*** United States keyboard layout (mostly contributed by Uwe Bonnes) */
static const char main_key_US[MAIN_LEN][4] =
{
@@ -311,10 +301,32 @@ static const char main_key_IS[MAIN_LEN][4] =
"<>"
};
+/* All german keyb layout tables have the acute/apostrophe symbol next to
+ * the BACKSPACE key removed (replaced with NULL which is ignored by the
+ * detection code).
+ * This was done because the mapping of the acute (and apostrophe) is done
+ * differently in various xkb-data/xkeyboard-config versions. Some replace
+ * the acute with a normal apostrophe, so that the apostrophe is found twice
+ * on the keyboard (one next to BACKSPACE and one next to ENTER).
+ * Others put the acute and grave accents on the key left of BACKSPACE.
+ * More information on the fd.o bugtracker:
+ * https://bugs.freedesktop.org/show_bug.cgi?id=11514
+ */
+
+/*** German Logitech Desktop Pro keyboard layout */
+static const char main_key_DE_logitech[MAIN_LEN][4] =
+{
+ "^\xb0","1!","2\"","3\xa7","4$","5%","6&","7/{","8([","9)]","0=}","\xdf?\\","\0`",
+ "qQ@","wW","eE","rR","tT","zZ","uU","iI","oO","pP","\xfc\xdc","+*~",
+ "aA","sS","dD","fF","gG","hH","jJ","kK","lL","\xf6\xd6","\xe4\xc4","#'",
+ "yY","xX","cC","vV","bB","nN","mM",",;",".:","-_",
+ "<>|"
+};
+
/*** German keyboard layout (setxkbmap de) */
static const char main_key_DE[MAIN_LEN][4] =
{
- "^�","1!","2\"","3�","4$","5%","6&","7/","8(","9)","0=","�?","�`",
+ "^�","1!","2\"","3�","4$","5%","6&","7/","8(","9)","0=","�?","\0`",
"qQ","wW","eE","rR","tT","zZ","uU","iI","oO","pP","��","+*",
"aA","sS","dD","fF","gG","hH","jJ","kK","lL","��","��","#'",
"yY","xX","cC","vV","bB","nN","mM",",;",".:","-_",
@@ -324,7 +336,7 @@ static const char main_key_DE[MAIN_LEN][4] =
/*** German keyboard layout without dead keys */
static const char main_key_DE_nodead[MAIN_LEN][4] =
{
- "^�","1!","2\"","3�","4$","5%","6&","7/{","8([","9)]","0=}","�?\\","�",
+ "^�","1!","2\"","3�","4$","5%","6&","7/{","8([","9)]","0=}","�?\\","",
"qQ","wW","eE","rR","tT","zZ","uU","iI","oO","pP","��","+*~",
"aA","sS","dD","fF","gG","hH","jJ","kK","lL","��","��","#'",
"yY","xX","cC","vV","bB","nN","mM",",;",".:","-_",
@@ -334,7 +346,7 @@ static const char main_key_DE_nodead[MAIN_LEN][4] =
/*** German keyboard layout without dead keys 105 Keys (contributed by Matthias Fechner)*/
static const char main_key_DE_nodead_105[MAIN_LEN][4] =
{
- "^�","1!","2\"�","3��","4$","5%","6&","7/{","8([","9)]","0=}","�?\\","'`",
+ "^�","1!","2\"�","3��","4$","5%","6&","7/{","8([","9)]","0=}","�?\\","\0`",
"qQ@","wW","eE","rR","tT","zZ","uU","iI","oO","pP","��","+*~",
"aA","sS","dD","fF","gG","hH","jJ","kK","lL","��","��","#'",
"<>|","yY","xX","cC","vV","bB","nN","mM",",;",".:","-_",