comparison src/madplug/decoder.c @ 789:354c69a939bc trunk

[svn] revising vfs_fread() check code. - check vfs handle code has been restored to original position. - accidentally removed substitution to ret has been restored. - in audmad_is_our_fd(), check code just puts log message instead of return. please let me know if log message would be put upon proper mp3 file. - in scan_file(), check code returns if vfs_fread() fails. this fixes open audio with bogus parameters problem.
author yaz
date Tue, 06 Mar 2007 22:08:18 -0800
parents 2461b711162b
children 2b2313fc1ddc
comparison
equal deleted inserted replaced
788:2461b711162b 789:354c69a939bc
193 g_message("scan_file frames = %d", info->frames); 193 g_message("scan_file frames = %d", info->frames);
194 #endif /* DEBUG */ 194 #endif /* DEBUG */
195 195
196 while (1) { 196 while (1) {
197 remainder = stream.bufend - stream.next_frame; 197 remainder = stream.bufend - stream.next_frame;
198 198
199 /* 199 /*
200 if (remainder >= BUFFER_SIZE) 200 if (remainder >= BUFFER_SIZE)
201 { 201 {
202 printf("oh dear.. remainder = %d\n", remainder); 202 printf("oh dear.. remainder = %d\n", remainder);
203 } 203 }
206 memcpy(buffer, stream.this_frame, remainder); 206 memcpy(buffer, stream.this_frame, remainder);
207 len = input_get_data(info, buffer + remainder, 207 len = input_get_data(info, buffer + remainder,
208 BUFFER_SIZE - remainder); 208 BUFFER_SIZE - remainder);
209 209
210 if (len <= 0) { 210 if (len <= 0) {
211 #ifdef DEBUG
212 g_message("scan_file: len <= 0 abort."); 211 g_message("scan_file: len <= 0 abort.");
213 #endif 212 return 0;
214 break;
215 } 213 }
216 214
217 mad_stream_buffer(&stream, buffer, len + remainder); 215 mad_stream_buffer(&stream, buffer, len + remainder);
218 216
219 while (!fast || (fast && info->frames < N_AVERAGE_FRAMES)) { 217 while (!fast || (fast && info->frames < N_AVERAGE_FRAMES)) {