mirror of
https://github.com/Oibaf66/fbzx-wii.git
synced 2024-11-28 11:04:15 +01:00
Fixed core dump when loading a not selected file
This commit is contained in:
parent
b2577d4ec5
commit
c69af76e53
30
src/tape.c
30
src/tape.c
@ -811,18 +811,22 @@ void fastload_block_tap (FILE * fichero) {
|
|||||||
procesador.Rm.br.L=0x01;
|
procesador.Rm.br.L=0x01;
|
||||||
procesador.Ra.br.F=0x01;
|
procesador.Ra.br.F=0x01;
|
||||||
|
|
||||||
empty=file_empty(fichero);
|
if (fichero == NULL) {
|
||||||
|
|
||||||
|
|
||||||
if ((fichero == NULL)||(empty)) {
|
|
||||||
procesador.Rm.br.F &= (~F_C); // Load error
|
procesador.Rm.br.F &= (~F_C); // Load error
|
||||||
if(empty)
|
|
||||||
sprintf (ordenador.osd_text, "Tape file empty");
|
|
||||||
else
|
|
||||||
sprintf (ordenador.osd_text, "No tape selected");
|
sprintf (ordenador.osd_text, "No tape selected");
|
||||||
ordenador.osd_time = 100;
|
ordenador.osd_time = 100;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
empty=file_empty(fichero);
|
||||||
|
|
||||||
|
if (empty) {
|
||||||
|
procesador.Rm.br.F &= (~F_C); // Load error
|
||||||
|
sprintf (ordenador.osd_text, "Tape file empty");
|
||||||
|
ordenador.osd_time = 100;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
ordenador.tape_position=ftell(fichero);
|
ordenador.tape_position=ftell(fichero);
|
||||||
retval=fread (value, 1, 2, fichero); // read length of current block
|
retval=fread (value, 1, 2, fichero); // read length of current block
|
||||||
if (feof (fichero)) { // end of file?
|
if (feof (fichero)) { // end of file?
|
||||||
@ -973,16 +977,18 @@ void fastload_block_tzx (FILE * fichero) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (fichero == NULL) {
|
||||||
|
procesador.Rm.br.F &= (~F_C); // Load error
|
||||||
|
sprintf (ordenador.osd_text, "No tape selected");
|
||||||
|
ordenador.osd_time = 100;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
empty=file_empty(fichero);
|
empty=file_empty(fichero);
|
||||||
|
|
||||||
if ((fichero == NULL)||(empty)) {
|
if (empty) {
|
||||||
procesador.PC=0x5e2;
|
|
||||||
procesador.Rm.br.F &= (~F_C); // Load error
|
procesador.Rm.br.F &= (~F_C); // Load error
|
||||||
if(empty)
|
|
||||||
sprintf (ordenador.osd_text, "Tape file empty");
|
sprintf (ordenador.osd_text, "Tape file empty");
|
||||||
else
|
|
||||||
sprintf (ordenador.osd_text, "No tape selected");
|
|
||||||
ordenador.osd_time = 100;
|
ordenador.osd_time = 100;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user