return p;
}
+#ifdef WITH_FUSE
static FILE *wim_get_fp(WIMStruct *w)
{
pthread_mutex_lock(&w->fp_tab_mutex);
pthread_mutex_unlock(&w->fp_tab_mutex);
return ret;
}
+#endif
/*
* Reads some data from the resource corresponding to a WIM lookup table entry.
* or uncompressed. */
wimlib_assert(lte->wim != NULL);
+ #ifdef WITH_FUSE
if (flags & WIMLIB_RESOURCE_FLAG_MULTITHREADED) {
fp = wim_get_fp(lte->wim);
if (!fp)
return WIMLIB_ERR_OPEN;
- } else {
+ } else
+ #endif
+ {
+ wimlib_assert(!(flags & WIMLIB_RESOURCE_FLAG_MULTITHREADED));
wimlib_assert(lte->wim->fp != NULL);
fp = lte->wim->fp;
}
lte->resource_entry.original_size,
lte->resource_entry.offset,
ctype, size, offset, buf);
+ #ifdef WITH_FUSE
if (flags & WIMLIB_RESOURCE_FLAG_MULTITHREADED) {
int ret2 = wim_release_fp(lte->wim, fp);
if (ret == 0)
ret = ret2;
}
+ #endif
break;
case RESOURCE_IN_STAGING_FILE:
case RESOURCE_IN_FILE_ON_DISK:
case RESOURCE_IN_NTFS_VOLUME:
wimlib_assert(lte->ntfs_loc != NULL);
wimlib_assert(lte->attr != NULL);
- {
- if (lte->ntfs_loc->is_reparse_point)
- offset += 8;
- if (ntfs_attr_pread(lte->attr, offset, size, buf) != size) {
- ERROR_WITH_ERRNO("Error reading NTFS attribute "
- "at `%s'",
- lte->ntfs_loc->path_utf8);
- ret = WIMLIB_ERR_NTFS_3G;
- }
- break;
+ if (lte->ntfs_loc->is_reparse_point)
+ offset += 8;
+ if (ntfs_attr_pread(lte->attr, offset, size, buf) != size) {
+ ERROR_WITH_ERRNO("Error reading NTFS attribute "
+ "at `%s'",
+ lte->ntfs_loc->path_utf8);
+ ret = WIMLIB_ERR_NTFS_3G;
}
+ break;
#endif
default:
wimlib_assert(0);