gpointer base;
guint8 *base_cached;
GnomeVFSFileOffset offset;
- GnomeVFSHandle *handle;
+ GnomeVFSHandle **handlep;
GnomeVFSFileSize size;
const gchar *filename;
GnomeVFSURI *uri;
struct acquire_cabinet *acquire_cabinet_new_from_memory
(gconstpointer file_base,size_t file_length,GnomeVFSURI *uri,gint cabinet_used);
struct acquire_cabinet *acquire_cabinet_new_from_handle
- (GnomeVFSHandle *handle,GnomeVFSFileInfo *file_info,GnomeVFSURI *uri,gint cabinet_used);
+ (GnomeVFSHandle **handlep,GnomeVFSFileInfo *file_info,GnomeVFSURI *uri,gint cabinet_used);
void acquire_cabinet_free(struct acquire_cabinet *acquire_cabinet);
void acquire_cabinet_load(struct acquire_cabinet *acquire_cabinet);
}
static void mod_uri_load_file_handle_remote_cabinet
- (GnomeVFSHandle *handle,GnomeVFSFileInfo *file_info,GnomeVFSURI *uri,gint cabinet_used)
+ (GnomeVFSHandle **handlep,GnomeVFSFileInfo *file_info,GnomeVFSURI *uri,gint cabinet_used)
{
struct acquire_cabinet *acquire_cabinet;
- g_return_if_fail(handle!=NULL);
+ g_return_if_fail(handlep!=NULL);
+ g_return_if_fail(*handlep!=NULL);
g_return_if_fail(file_info!=NULL);
g_return_if_fail(uri!=NULL);
- acquire_cabinet=acquire_cabinet_new_from_handle(handle,file_info,uri,cabinet_used);
+ acquire_cabinet=acquire_cabinet_new_from_handle(handlep,file_info,uri,cabinet_used);
/* acquire_cabinet_load() will call mod_uri_load_module_from_memory(): */
acquire_cabinet_load(acquire_cabinet);
acquire_cabinet_free(acquire_cabinet);
else {
gint cabinet_used=captivemodid_cabinet_length_to_used(file_info_local.size);
- mod_uri_load_file_handle_remote_cabinet(handle,&file_info_local,uri,cabinet_used);
+ mod_uri_load_file_handle_remote_cabinet(&handle,&file_info_local,uri,cabinet_used);
}
errvfsresult=GNOME_VFS_OK;
/* PASSTHRU */