summaryrefslogtreecommitdiff
path: root/src/lib/ecore_file
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/ecore_file')
-rw-r--r--src/lib/ecore_file/ecore_file.c31
1 files changed, 9 insertions, 22 deletions
diff --git a/src/lib/ecore_file/ecore_file.c b/src/lib/ecore_file/ecore_file.c
index 52d203e1c0..7a44680ba9 100644
--- a/src/lib/ecore_file/ecore_file.c
+++ b/src/lib/ecore_file/ecore_file.c
@@ -773,32 +773,19 @@ ecore_file_file_get(const char *path)
773 773
774 if (!path) return NULL; 774 if (!path) return NULL;
775 775
776#ifdef _WIN32
777 {
778 char buf[MAX_PATH];
779
780 memcpy(buf, path, strlen(path) + 1);
781 EVIL_PATH_SEP_UNIX_TO_WIN32(buf);
782 if ((result = strrchr(buf, '\\')))
783 {
784 result++;
785 return path + (result - buf);
786 }
787 else
788 return path;
789 }
790#endif
791
792 if ((result = strrchr(path, '/'))) result++; 776 if ((result = strrchr(path, '/'))) result++;
793 else result = (char *)path; 777 else result = (char *)path;
794 778
795#ifdef _WIN32 779#ifdef _WIN32
796 char *result_backslash = NULL; 780 /*
797 if ((result_backslash = strrchr(path, '\\'))) 781 * Here, we know that there is no more / in the string beginning at
798 { 782 * 'result'. So just check that there is no more \ from it.
799 result_backslash++; 783 */
800 if (result_backslash > result) result = result_backslash; 784 {
801 } 785 char *result_backslash;
786 if ((result_backslash = strrchr(result, '\\')))
787 result = ++result_backslash;
788 }
802#endif 789#endif
803 790
804 return result; 791 return result;