あと、リファクタリングで改善したんじゃないかと思う点は、 find_magic の効能 1.glob_helperの外側のwhileが省略できたので、continueなどの 流れが読みやすくなった 2.glob_helperの先頭で if (!has_magic が少し非効率に見えたが、 省略できた 3.マルチバイト対応で extract_path が著しく非効率になっていたが、 extract_系の関数は省略できたので、解決した。 メモリ 1.base, magic については、新規メモリ確保しなくてよくなった。 (安全性ではnull-terminated文字列のほうがいい?) 2.dirはメモリ確保する必要ができたが、そのかわり"e:*"のような パターンをdir=="e:."とできるようになった。