----------------------------------------------------------------------------------------------
[BUG/PRB.] VFP 9.0 FIX - CLOSE THE FILE HANDLE AFTER THE FILETOSTR() FUNCTION FAILED
January 2026
----------------------------------------------------------------------------------------------
CCB
1. BUG:
In vfp9 (and vfp6, vfp7, vfp8), sometimes vfp will not close the file handle after the FILETOSTR() function failed.
The bug was reported by Mrs Martina Jindrova.
2. CAUSE:
There are some BUGs in the following code.
3. RESOLUTION:
We can write some code to fix the BUG.
Label58dab7 ::
;
; -----------------------------------------------------------------------------------
; VFP 9.0 FIX - CLOSE THE FILE HANDLE AFTER THE FILETOSTR() FUNCTION FAILED
; June 2024
; -----------------------------------------------------------------------------------
; CCB
;
; Close the file handle after the FILETOSTR() function failed.
;
; 2024/6/3, by ccb
;
cmp dword ptr vfpa_sys9157_data,00h
je Label58dab8
cmp dword ptr [ esp + 4 ] , offset Label488e1a ;; Label488d4b ..
jne Label58dab8
jmp Label58dabf
Label58dab8 ::
test byte ptr [ Data936f10 ] , bl ;0x0058dab7 : 841d106f9300
je Label58dae3 ;0x0058dabd : 7424
Label58dabf ::
mov eax , dword ptr [ Data936f14 ] ;0x0058dabf : a1146f9300
test eax , eax ;0x0058dac4 : 85c0
jne Label58daed ;0x0058dac6 : 7525
mov dword ptr [ esi + 4 ] , ebx ;0x0058dac8 : 895e04
mov dword ptr [ Data936f14 ] , 0B6h ;0x0058dacb : c705146f9300b6000000
mov byte ptr [esi] , 049h ;0x0058dad5 : c60649
mov dword ptr [ esi + 12 ] , 00h ;0x0058dad8 : c7460c00000000
xor eax , eax ;0x0058dadf : 33c0
pop ebx ;0x0058dae1 : 5b
ret ;0x0058dae2 : c3
4. APPLIES TO:
VFP 6.0.8167.0
VFP 6.0.8961.0 (SP5)
VFP 7.0.0.9262
VFP 7.0.0.9465 (SP1)
VFP 8.0.0.2521
VFP 8.0.0.3117 (SP1)
VFP 9.0.0.2412
VFP 9.0.0.3504 (SP1)
VFP 9.0.0.4611 (SP2)
VFP 9.0.0.5015 (SP2)
VFP 9.0.0.5411 (SP2)
VFP 9.0.0.5721 (SP2)
VFP 9.0.0.5815 (SP2)
VFP 9.0.0.6303 (SP2)
VFP 9.0.0.6602 (SP2)
VFP 9.0.0.7423 (SP2)
The bug has been fixed in VFP Advanced.
5. REFERENCE WEBSITES:
1, baiyujia.com:
http://www.baiyujia.com
http://www.baiyujia.com/vfpdocuments/f_vfp9fix324.asp
6. OTHER:
For reference only, there is no guarantees.
Any questions or suggestions, please send me an email at ccb2000@163.com.
|