comparison libaudcore/playback.c @ 398:f908bcd87c3d trunk

[svn] Generate cache content on demand if it was not previously there.
author nenolod
date Sat, 07 Jan 2006 10:13:28 -0800
parents 0a19db762240
children
comparison
equal deleted inserted replaced
397:4fa1244ad483 398:f908bcd87c3d
81 } 81 }
82 82
83 void 83 void
84 bmp_playback_initiate(void) 84 bmp_playback_initiate(void)
85 { 85 {
86 const PlaylistEntry *entry; 86 PlaylistEntry *entry;
87 87
88 if (playlist_get_length() == 0) 88 if (playlist_get_length() == 0)
89 return; 89 return;
90 90
91 if (bmp_playback_get_playing()) 91 if (bmp_playback_get_playing())
199 gtk_dialog_run(GTK_DIALOG(dialog)); 199 gtk_dialog_run(GTK_DIALOG(dialog));
200 gtk_widget_destroy(dialog); 200 gtk_widget_destroy(dialog);
201 } 201 }
202 202
203 gboolean 203 gboolean
204 bmp_playback_play_file(const PlaylistEntry *entry) 204 bmp_playback_play_file(PlaylistEntry *entry)
205 { 205 {
206 g_return_val_if_fail(entry != NULL, FALSE); 206 g_return_val_if_fail(entry != NULL, FALSE);
207 207
208 if (!get_current_output_plugin()) { 208 if (!get_current_output_plugin()) {
209 run_no_output_plugin_dialog(); 209 run_no_output_plugin_dialog();
211 return FALSE; 211 return FALSE;
212 } 212 }
213 213
214 if (cfg.random_skin_on_play) 214 if (cfg.random_skin_on_play)
215 bmp_playback_set_random_skin(); 215 bmp_playback_set_random_skin();
216
217 if (!entry->decoder)
218 entry->decoder = input_check_file(entry->filename, FALSE);
216 219
217 if (!entry->decoder || !input_is_enabled(entry->decoder->filename)) 220 if (!entry->decoder || !input_is_enabled(entry->decoder->filename))
218 { 221 {
219 input_file_not_playable(entry->filename); 222 input_file_not_playable(entry->filename);
220 223