diff options
| author | 2008-08-31 20:58:42 +0200 | |
|---|---|---|
| committer | 2008-08-31 20:58:42 +0200 | |
| commit | 7ac3d681889a6a8f9987837ace5465f2967cfff9 (patch) | |
| tree | ac96888f90b8dd1bf69733f403ebd0c586917f8b /src/ifuse.c | |
| parent | 95e588fae32b17debf26ceaf456b361e06011623 (diff) | |
| download | libimobiledevice-7ac3d681889a6a8f9987837ace5465f2967cfff9.tar.gz libimobiledevice-7ac3d681889a6a8f9987837ace5465f2967cfff9.tar.bz2 | |
fix afc_getattr and more error handling in ifuse.c
Diffstat (limited to 'src/ifuse.c')
| -rw-r--r-- | src/ifuse.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/ifuse.c b/src/ifuse.c index ed36117..c266879 100644 --- a/src/ifuse.c +++ b/src/ifuse.c | |||
| @@ -46,7 +46,10 @@ static int ifuse_getattr(const char *path, struct stat *stbuf) { | |||
| 46 | int res = 0; | 46 | int res = 0; |
| 47 | 47 | ||
| 48 | iphone_afc_client_t afc = fuse_get_context()->private_data; | 48 | iphone_afc_client_t afc = fuse_get_context()->private_data; |
| 49 | iphone_afc_get_file_attr(afc, path, stbuf); | 49 | iphone_error_t ret = iphone_afc_get_file_attr(afc, path, stbuf); |
| 50 | |||
| 51 | if (ret != IPHONE_E_SUCCESS) | ||
| 52 | res = -ENOENT; | ||
| 50 | 53 | ||
| 51 | return res; | 54 | return res; |
| 52 | } | 55 | } |
| @@ -253,19 +256,19 @@ int ifuse_ftruncate(const char *path, off_t size, struct fuse_file_info *fi) { | |||
| 253 | 256 | ||
| 254 | int ifuse_unlink(const char *path) { | 257 | int ifuse_unlink(const char *path) { |
| 255 | iphone_afc_client_t afc = fuse_get_context()->private_data; | 258 | iphone_afc_client_t afc = fuse_get_context()->private_data; |
| 256 | if (iphone_afc_delete_file(afc, path)) return 0; | 259 | if (IPHONE_E_SUCCESS == iphone_afc_delete_file(afc, path)) return 0; |
| 257 | else return -1; | 260 | else return -1; |
| 258 | } | 261 | } |
| 259 | 262 | ||
| 260 | int ifuse_rename(const char *from, const char *to) { | 263 | int ifuse_rename(const char *from, const char *to) { |
| 261 | iphone_afc_client_t afc = fuse_get_context()->private_data; | 264 | iphone_afc_client_t afc = fuse_get_context()->private_data; |
| 262 | if (iphone_afc_rename_file(afc, from, to)) return 0; | 265 | if (IPHONE_E_SUCCESS == iphone_afc_rename_file(afc, from, to)) return 0; |
| 263 | else return -1; | 266 | else return -1; |
| 264 | } | 267 | } |
| 265 | 268 | ||
| 266 | int ifuse_mkdir(const char *dir, mode_t ignored) { | 269 | int ifuse_mkdir(const char *dir, mode_t ignored) { |
| 267 | iphone_afc_client_t afc = fuse_get_context()->private_data; | 270 | iphone_afc_client_t afc = fuse_get_context()->private_data; |
| 268 | if (iphone_afc_mkdir(afc, dir)) return 0; | 271 | if (IPHONE_E_SUCCESS == iphone_afc_mkdir(afc, dir)) return 0; |
| 269 | else return -1; | 272 | else return -1; |
| 270 | } | 273 | } |
| 271 | 274 | ||
