あと、リファクタリングで改善したんじゃないかと思う点は、

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:."とできるようになった。