Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

テストコードで_swprintf_pの利用をやめる #593

Merged
merged 1 commit into from
Nov 3, 2018

Conversation

berryzplus
Copy link
Contributor

テストコードで利用していた_swprintf_pの利用をやめます。

#591 (comment)
#559 (comment)

_swprintf_p関数は、引数で与えたパラメータの順番を書式文字列で制御することができます。
この関数をあえて使ったのは国際化対応に活用したい動機があったためです。

関数名 説明 備考
_swprintf_p 書式指定に引数の順序を含めることができる MinGWが非対応
swprintf_s 書式指定に引数の順序を含めることができない MinGWも対応

置き換え対象コードはテストコードなので、本筋の対応には一切影響を与えません。
本筋の国際化対応には別の方法(FormatMessage関数)が使えそうなので、テストコードの試みは単純にひっこめます。

masterブランチはまだMinGWのテストが有効になってないので、これのappveyor結果を見ても効果の有無は確認できませんが、一応ローカルでビルド確認済みです。

#591をフェッチしてビルドしたときに発生したエラーがこれです。

CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x1029): undefined reference to `__imp__swprintf_p'
CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x138d): undefined reference to `__imp__swprintf_p'
CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x16b2): undefined reference to `__imp__swprintf_p'
CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x16d8): undefined reference to `__imp__swprintf_p'
CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x1b59): undefined reference to `__imp__swprintf_p'
CMakeFiles\tests1.dir/objects.a(test-is_mailaddress.cpp.obj):test-is_mailaddress
.cpp:(.text+0x1b7e): more undefined references to `__imp__swprintf_p' follow
collect2.exe: error: ld returned 1 exit status
unittests\CMakeFiles\tests1.dir\build.make:501: recipe for target 'bin/tests1.ex
e' failed

このPRのコミット f658102 をcherry pickした状態でビルド正常、テストOKを確認しています。

テストコードで利用していた_swprintf_pの利用をやめる。
Copy link
Contributor

@ds14050 ds14050 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

国際化対応に順序付きパラメータが使いたいのはわかります。語順を変えられないがために珍妙なエラーメッセージが生産されてきました。

Copy link
Member

@m-tmatma m-tmatma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ありがとうございます。

@m-tmatma m-tmatma merged commit 0a934fe into sakura-editor:master Nov 3, 2018
@m-tmatma m-tmatma added this to the next release milestone Nov 3, 2018
@berryzplus berryzplus deleted the feature/omit_swprintf_p branch November 3, 2018 14:44
HoppingTappy pushed a commit to HoppingTappy/sakura that referenced this pull request Jun 11, 2019
…rintf_p

テストコードで_swprintf_pの利用をやめる
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants