From 81a3a3fc96c5a6cc2fb757ad59475e9591d1286d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Fran=C3=A7ois=20DEL=20NERO?= Date: Sun, 5 Oct 2025 23:17:48 +0200 Subject: [PATCH] fix ana loader. --- libhxcfe/sources/loaders/ana_loader/ana_loader.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libhxcfe/sources/loaders/ana_loader/ana_loader.c b/libhxcfe/sources/loaders/ana_loader/ana_loader.c index d23bf0dc..becbc9ec 100644 --- a/libhxcfe/sources/loaders/ana_loader/ana_loader.c +++ b/libhxcfe/sources/loaders/ana_loader/ana_loader.c @@ -175,9 +175,9 @@ int getnextsector(int32_t track,int32_t side,AnaDisk_sectorheader * sectorheader ret = hxc_fread(sectorheader,sizeof(AnaDisk_sectorheader),f); lastdatapos = ftell(f); fseek(f,sectorheader->data_len,SEEK_CUR); - }while( ret>0 && !feof(f) && ( sectorheader->cylinder != track || sectorheader->side != side) ); + }while( ret>0 && !feof(f) && ( ( sectorheader->cylinder != track ) || ( sectorheader->side != side ) ) ); - if( ret>0 || feof(f) ) + if( ret<=0 || feof(f) ) { return 0; } @@ -265,7 +265,7 @@ int ANA_libLoad_DiskFile(HXCFE_IMGLDR * imgldr_ctx,HXCFE_FLOPPY * floppydisk,cha sectorfound = 0; - while(getnextsector(i,j,§or_header,f)) + while(getnextsector(i,j,§or_header,f) && sectorfound < 128) { imgldr_ctx->hxcfe->hxc_printf(MSG_DEBUG,"Side %d Track %d Sector %d Data len %d",sector_header.logical_side,sector_header.logical_cylinder,sector_header.logical_sector,sector_header.data_len);