Changeset 2114
- Timestamp:
- Jun 17, 2007, 4:10:26 AM (15 years ago)
- Location:
- branches/file_selection
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/file_selection/gtk/make-meta-ui.c
r2112 r2114 49 49 } 50 50 MakeMetaUI; 51 52 static void 53 freeMetaUI( gpointer p ) 54 { 55 MakeMetaUI * ui = (MakeMetaUI *) p; 56 tr_metaInfoBuilderFree( ui->builder ); 57 memset( ui, ~0, sizeof(MakeMetaUI) ); 58 g_free( ui ); 59 } 51 60 52 61 static void … … 216 225 NULL ); 217 226 g_signal_connect( d, "response", G_CALLBACK(response_cb), ui ); 218 g_object_set_data_full( G_OBJECT(d), "ui", ui, g_free);227 g_object_set_data_full( G_OBJECT(d), "ui", ui, freeMetaUI ); 219 228 ui->dialog = d; 220 229 -
branches/file_selection/libtransmission/makemeta.c
r2112 r2114 195 195 for( i=0; i<builder->fileCount; ++i ) 196 196 tr_free( builder->files[i] ); 197 tr_free( builder->files ); 198 tr_free( builder->fileLengths ); 197 199 tr_free( builder->top ); 198 200 tr_free( builder->comment ); … … 215 217 uint8_t *buf = malloc( b->pieceSize ); 216 218 size_t totalRemain; 219 FILE * fp; 217 220 218 221 b->pieceIndex = 0; 219 222 totalRemain = b->totalSize; 223 fp = fopen( b->files[fileIndex], "rb" ); 220 224 while ( totalRemain ) 221 225 { … … 228 232 while( pieceRemain ) 229 233 { 230 FILE * fp = fopen( b->files[fileIndex], "rb" );231 234 const size_t n_this_pass = MIN( (b->fileLengths[fileIndex] - off), pieceRemain ); 232 if( off )233 fseek( fp, off, SEEK_SET );234 235 fread( bufptr, 1, n_this_pass, fp ); 235 236 bufptr += n_this_pass; 236 237 off += n_this_pass; 237 238 pieceRemain -= n_this_pass; 238 fclose( fp );239 240 239 if( off == b->fileLengths[fileIndex] ) { 241 240 off = 0; 242 ++fileIndex; 241 fclose( fp ); 242 fp = NULL; 243 if( ++fileIndex < b->fileCount ) { 244 fp = fopen( b->files[fileIndex], "rb" ); 245 } 243 246 } 244 247 } … … 259 262 assert( b->abortFlag || (walk-ret == (int)(SHA_DIGEST_LENGTH*b->pieceCount)) ); 260 263 assert( b->abortFlag || !totalRemain ); 264 assert( fp == NULL ); 261 265 262 266 free( buf );
Note: See TracChangeset
for help on using the changeset viewer.