comparison gui/dialog/fileselect.c @ 35931:dd2264983633

Make fsSelectedDirectory a local variable. Additionally, avoid memory leaks by using the variable instead of calling get_current_dir_name() again and by freeing fsSelectedDirectory.
author ib
date Wed, 20 Mar 2013 17:33:42 +0000
parents eab9c3e8a565
children 445773b8c373
comparison
equal deleted inserted replaced
35930:9f25b60fa81b 35931:dd2264983633
55 #else 55 #else
56 char * get_current_dir_name( void ); 56 char * get_current_dir_name( void );
57 #endif 57 #endif
58 58
59 char * fsSelectedFile = NULL; 59 char * fsSelectedFile = NULL;
60 char * fsSelectedDirectory = NULL;
61 gchar * fsSelectedDirectoryUtf8 = NULL; 60 gchar * fsSelectedDirectoryUtf8 = NULL;
62 unsigned char * fsThatDir = "."; 61 unsigned char * fsThatDir = ".";
63 const gchar * fsFilter = "*"; 62 const gchar * fsFilter = "*";
64 63
65 int fsType = 0; 64 int fsType = 0;
496 return; 495 return;
497 } 496 }
498 497
499 static void fs_Ok_released( GtkButton * button, gpointer user_data ) 498 static void fs_Ok_released( GtkButton * button, gpointer user_data )
500 { 499 {
500 char * fsSelectedDirectory;
501 GList * item; 501 GList * item;
502 int i = 1, l; 502 int i = 1, l;
503 struct stat fs; 503 struct stat fs;
504 gchar * selected; 504 gchar * selected;
505 505
528 listMgr(PLAYLIST_DELETE, 0); 528 listMgr(PLAYLIST_DELETE, 0);
529 add_to_gui_playlist(selected, PLAYLIST_ITEM_APPEND); 529 add_to_gui_playlist(selected, PLAYLIST_ITEM_APPEND);
530 g_free(selected); 530 g_free(selected);
531 } 531 }
532 guiInfo.NewPlay=GUI_FILE_NEW; sub_fps=0; 532 guiInfo.NewPlay=GUI_FILE_NEW; sub_fps=0;
533 fs_PersistantHistory( get_current_dir_name() ); //totem, write into history 533 fs_PersistantHistory( fsSelectedDirectory );
534 break; 534 break;
535 case fsSubtitleSelector: 535 case fsSubtitleSelector:
536 setddup( &guiInfo.SubtitleFilename,fsSelectedDirectory,fsSelectedFile ); 536 setddup( &guiInfo.SubtitleFilename,fsSelectedDirectory,fsSelectedFile );
537 mplayerLoadSubtitle( guiInfo.SubtitleFilename ); 537 mplayerLoadSubtitle( guiInfo.SubtitleFilename );
538 break; 538 break;
560 if ( i ) 560 if ( i )
561 { 561 {
562 fsTopList_items=g_list_prepend( fsTopList_items,fsSelectedDirectoryUtf8 ); 562 fsTopList_items=g_list_prepend( fsTopList_items,fsSelectedDirectoryUtf8 );
563 g_hash_table_insert(fsPathTable, strdup(fsSelectedDirectoryUtf8), strdup(fsSelectedDirectory)); 563 g_hash_table_insert(fsPathTable, strdup(fsSelectedDirectoryUtf8), strdup(fsSelectedDirectory));
564 } 564 }
565
566 free(fsSelectedDirectory);
567
565 if ( uiLoadPlay ) { uiLoadPlay=False; uiEvent( evPlay,0 ); } 568 if ( uiLoadPlay ) { uiLoadPlay=False; uiEvent( evPlay,0 ); }
566 else gui( GUI_SET_STATE,(void *) GUI_STOP ); 569 else gui( GUI_SET_STATE,(void *) GUI_STOP );
567 } 570 }
568 571
569 static void fs_Cancel_released( GtkButton * button,gpointer user_data ) 572 static void fs_Cancel_released( GtkButton * button,gpointer user_data )