2014-12-30

Intel Dual Band Wireless-AC 7260 でスリープ解除後 Wi-Fi が繋がらなくなる

スリープ解除後 Wi-Fi が繋がらなくなって、再度スリープ、スリープ解除するか、デバイスの有効無効を切り替えないと復帰しない不具合が、Intel Dual Band Wireless-AC 7260 (Intel® PROSet/Wireless Software and Drivers 17.1) と NEC Aterm WF800HP (ファームウェア Ver1.0.16) の組み合わせで発生していました。

Intel 側も相互運用性に関する問題を認識しているらしく、解説の通りデバイスの詳細設定で、省電力に関する機能 U-APSD 対応を無効とすることで繋がらなくなる現象は発生しなくなりました。



この問題が発生するのは、Intel® PROSet/Wireless Software and Drivers のバージョン 16.6 以降と以下の機種を組み合わせた場合のようです。
Intel® Dual Band Wireless-AC 7265.
Intel® Dual Band Wireless-N 7265.
Intel® Wireless-N 7265.
Intel® Dual Band Wireless-AC 7260.
Intel® Dual Band Wireless-AC 7260 for Desktop.
Intel® Dual Band Wireless-N 7260.
Intel® Wireless-N 7260.

リンク
Intel® Wi-Fi Products — TechNote: Access Point Interoperability Issue with uAPSD

2014-12-29

CloudFlare: サブドメイン毎に Flexible, Full SSL を設定する

CloudFlare の SSL 設定の種類 (What do the SSL options (Off, Flexible SSL, Full SSL, Full SSL Strict) mean?) の設定について、ドメイン全体に適用されるグローバルな設定だけでは不十分なときは、Page rules の SSL から個別に Flexible SSL にするか Full SSL にするかなどの設定を行うことが出来ます。

設定画面へは My websites から、右の歯車を押して、Page rules で行けます。対象とするパスは www.example.com/* のように入力すれば OK みたいです。

Page rules の設定は Free plan だとドメインあたり3個までなので、足りない場合は Pro plan に移行する必要があります。

2014-12-28

.htaccess を使って利用可能な Apache モジュールの一覧を取得する

共有サーバーなど、httpd.conf や mod_info の server-info を確認できない状況で、組み込まれているモジュールを確認するには、IfModule と Header append を組み合わせると、指定した中で利用可能なモジュールをレスポンスヘッダー X-Module に出力することができます。

# .htaccess

<IfModule mod_deflate.c>
    Header append X-Module mod_deflate
</IfModule>
<IfModule mod_expires.c>
    Header append X-Module mod_expires
</IfModule>
<IfModule mod_rewrite.c>
    Header append X-Module mod_rewrite
</IfModule>
<IfModule mod_ratelimit.c>
    Header append X-Module mod_ratelimit
</IfModule>
<IfModule mod_setenvif.c>
    Header append X-Module mod_setenvif
</IfModule>

2014-12-13

Chrome でダウンロードしたファイル名の一部がハイフンになる

Google Chrome で Content-Disposition ヘッダでファイル名に時刻 (12:34:56) のような文字列を入れてダウンロードするとなぜか勝手に 12-34-56 のようにハイフンになってしまう理由が良く分からなかったのですが、Windows ではそもそもファイル名にコロンは使えないので、安全のため全プラットフォームでファイル名にコロンを含む文字列を設定しないようになっているからみたいです。

変換対象の文字一覧は、filename_util_unsafe.cc の illegal_characters に入っていて、変換先がハイフンになる理由は、filename_util_internal.cc の GetSuggestedFilenameImpl でコールバック関数 replace_illegal_characters_callback を第二引数を '-' として呼び出しているからのようです。

ReplaceIllegalCharactersInPath の使い方は変換先を ' ' にしたり '_' にしたりするバリエーションがあったので、必ずしもハイフンに変換されるという訳ではないみたいです。

リンク
https://chromium.googlesource.com/chromium/src.git/+/39.0.2171.95/net/base/filename_util_unsafe.cc
https://chromium.googlesource.com/chromium/src.git/+/39.0.2171.95/net/base/filename_util_internal.cc

2014-11-24

Cocos2d-x で dlopen failed: cannot locate symbol "rand"

EABI は正しいのに Cocos2d-x v3 のアプリが立ち上がらずに即座にクラッシュする場合、ログに dlopen failed: cannot locate symbol "rand" が出ていないかを確認してみてください。

これはどうやら NDK が Android 5.0 (Lollipop) 64bit でしか動かないバイナリを作ってしまっているのが原因のようで、Cocos2d-x で公式に推薦されている Android NDK r9d を使うと大丈夫でした。

リンク

Issue 168 - android-developer-preview - libc removed issetugid - A public project for reporting issues with Android Developer Preview releases - Google Project Hosting
NDK r9d url - Compiling and linking error when using NDK r10 to build cocos2d-x v3.2 | Cocos2d-x