When dirName is "" (eg. when called by BuiltinReadDirectory), FontFileMakeDir would read before the string (on all platforms) and after the string (when WIN32 is defined).
Fix the underrun issue by checking the string length before subtracting one. Fix the overrun issue by checking the location of the found : before adding two.
Signed-off-by: Peter Harris email@example.com