summaryrefslogtreecommitdiff
path: root/src/lib/ecore_file
diff options
context:
space:
mode:
authorVincent Torri <vincent dot torri at gmail dot com>2015-10-15 14:36:17 +0200
committerCedric BAIL <cedric@osg.samsung.com>2015-12-01 11:35:24 -0800
commit892df20bd45d2e15a7f356a06884d0b121c91c57 (patch)
treee094a68e440747608bb40c28823f4fe299da4c73 /src/lib/ecore_file
parent38902ef2919f0bc303e81081c5275412114fed8e (diff)
ecore_file: fix ecore_file_file_get() on Windows
@fix Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Diffstat (limited to 'src/lib/ecore_file')
-rw-r--r--src/lib/ecore_file/ecore_file.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/lib/ecore_file/ecore_file.c b/src/lib/ecore_file/ecore_file.c
index 07d247bea0..52d203e1c0 100644
--- a/src/lib/ecore_file/ecore_file.c
+++ b/src/lib/ecore_file/ecore_file.c
@@ -29,7 +29,6 @@
29 29
30/* 30/*
31 * FIXME: the following functions will certainly not work on Windows: 31 * FIXME: the following functions will certainly not work on Windows:
32 * ecore_file_file_get()
33 * ecore_file_app_exe_get() 32 * ecore_file_app_exe_get()
34 * ecore_file_escape_name() 33 * ecore_file_escape_name()
35 */ 34 */
@@ -773,6 +772,23 @@ ecore_file_file_get(const char *path)
773 char *result = NULL; 772 char *result = NULL;
774 773
775 if (!path) return NULL; 774 if (!path) return NULL;
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
776 if ((result = strrchr(path, '/'))) result++; 792 if ((result = strrchr(path, '/'))) result++;
777 else result = (char *)path; 793 else result = (char *)path;
778 794