チケット #37853

Wineで新規を選ぶと落ちる

登録: 2018-01-01 23:34 最終更新: 2018-01-01 23:41

報告者:
担当者:
チケットの種類:
状況:
オープン [担当者決定済み]
コンポーネント:
(未割り当て)
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
なし
ファイル:
なし

詳細

Linux上でWineを使い変愚蛮怒(Windows版)を起動し、メニューバーから[ファイル]-[新規]を選ぶと、変愚蛮怒が異常終了します。このとき画面に特段のメッセージは表示されません。 OSは Ubuntu 16.04 (x86_64)で、Wineは https://wiki.winehq.org/Ubuntu で配布されている公式配布版(wine-stable)の2.0.3を使いました。

こちらの調査では変愚蛮怒2.2.0のほか2.1.4がNGで、2.1.3は正常に動作しました(すべて公式配布版)。また、最新版ソースに以下の変更をすることで、動作可能となるようです。以下のパッチを元に修正を検討いただけましたら幸いです。

diff --git a/src/z-rand.c b/src/z-rand.c
index 9ca8786..4ac02c6 100644
--- a/src/z-rand.c
+++ b/src/z-rand.c
@@ -203,7 +203,7 @@ void Rand_state_init(void)
 
 	HCRYPTPROV hProvider;
 
-	CryptAcquireContext(&hProvider, NULL, NULL, PROV_RSA_FULL, 0);
+	CryptAcquireContext(&hProvider, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT);
 
 	do {
 		CryptGenRandom(hProvider, sizeof(Rand_state[0]) * 4, (BYTE*)Rand_state);

変更前はデフォルトの鍵コンテナへのアクセスを要求しており、このコンテナがない場合は hProvider に有効なハンドルを得られません。変更後は特定の鍵コンテナをオープンしないと CryptAcquireContext に指示するので、デフォルトの鍵コンテナの有無によらず hProvider に有効なハンドルを得られるようになります。

以上よろしくお願いします。

チケットの履歴 (2 件中 2 件表示)

2018-01-01 23:34 更新者: sagawa_aki
  • 新しいチケット "Wineで新規を選ぶと落ちる" が作成されました
2018-01-01 23:41 更新者: deskull
  • 担当者(未割り当て) から deskull に更新されました
  • マイルストーン(未割り当て) から 変愚蛮怒3.0.Xリリース に更新されました
  • 詳細が更新されました
コメント

パッチの御提供ありがとうございます。こちらでも可能な限り確認の上適用させていただきます。

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする