From 9dd824ba500e70dfd9fb0731a09f3e738918ec7e Mon Sep 17 00:00:00 2001 From: Denis Krjuchkov Date: Tue, 3 Dec 2013 11:59:57 +0600 Subject: fs/Traits.hxx: don't use g_path_is_absolute --- src/fs/Traits.hxx | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'src/fs') diff --git a/src/fs/Traits.hxx b/src/fs/Traits.hxx index 6b46f824e..51941cb70 100644 --- a/src/fs/Traits.hxx +++ b/src/fs/Traits.hxx @@ -24,7 +24,7 @@ #include "Compiler.h" #ifdef WIN32 -#include +#include "util/CharUtil.hxx" #endif #include @@ -62,23 +62,21 @@ struct PathTraits { gcc_pure static bool IsAbsoluteFS(const_pointer p) { assert(p != nullptr); - #ifdef WIN32 - return g_path_is_absolute(p); -#else - return IsSeparatorFS(*p); + if (IsAlphaASCII(p[0]) && p[1] == ':' && IsSeparatorFS(p[2])) + return true; #endif + return IsSeparatorFS(*p); } gcc_pure static bool IsAbsoluteUTF8(const char *p) { assert(p != nullptr); - #ifdef WIN32 - return g_path_is_absolute(p); -#else - return IsSeparatorUTF8(*p); + if (IsAlphaASCII(p[0]) && p[1] == ':' && IsSeparatorUTF8(p[2])) + return true; #endif + return IsSeparatorUTF8(*p); } /** -- cgit v1.2.3