equal
deleted
inserted
replaced
109 char *FiosBrowseTo(const FiosItem *item) |
109 char *FiosBrowseTo(const FiosItem *item) |
110 { |
110 { |
111 char *path = _fios_path; |
111 char *path = _fios_path; |
112 |
112 |
113 switch (item->type) { |
113 switch (item->type) { |
|
114 case FIOS_TYPE_DRIVE: |
114 #if defined(WINCE) |
115 #if defined(WINCE) |
115 case FIOS_TYPE_DRIVE: sprintf(path, PATHSEP ""); break; |
116 sprintf(path, PATHSEP ""); |
116 #elif defined(WIN32) || defined(__OS2__) |
117 #elif defined(WIN32) || defined(__OS2__) |
117 case FIOS_TYPE_DRIVE: sprintf(path, "%c:" PATHSEP, item->title[0]); break; |
118 sprintf(path, "%c:" PATHSEP, item->title[0]); |
118 #endif |
119 #endif |
|
120 /* Fallthrough */ |
|
121 case FIOS_TYPE_INVALID: |
|
122 break; |
119 |
123 |
120 case FIOS_TYPE_PARENT: { |
124 case FIOS_TYPE_PARENT: { |
121 /* Check for possible NULL ptr (not required for UNIXes, but AmigaOS-alikes) */ |
125 /* Check for possible NULL ptr (not required for UNIXes, but AmigaOS-alikes) */ |
122 char *s = strrchr(path, PATHSEPCHAR); |
126 char *s = strrchr(path, PATHSEPCHAR); |
123 if (s != NULL && s != path) { |
127 if (s != NULL && s != path) { |
150 { |
154 { |
151 static char str_buffr[512]; |
155 static char str_buffr[512]; |
152 snprintf(str_buffr, lengthof(str_buffr), "%s%s", path, item->name); |
156 snprintf(str_buffr, lengthof(str_buffr), "%s%s", path, item->name); |
153 return str_buffr; |
157 return str_buffr; |
154 } |
158 } |
155 |
|
156 case FIOS_TYPE_DRIVE: |
|
157 case FIOS_TYPE_INVALID: |
|
158 break; |
|
159 } |
159 } |
160 |
160 |
161 return NULL; |
161 return NULL; |
162 } |
162 } |
163 |
163 |