loader: ficl pfopendir() should push FICL_FALSE in case of error
The pfopendir() is supposed to leave in stack ( fd FICL_TRUE ) if the opendir was successful and ( FICL_FALSE ) if not. The bug is that we get FICL_TRUE in both cases.
With patch we get:
ok s" boot" fopendir ok .s [data stack has 2 entries, top at 0x00000000091412a0] [0x00000000091412a0 0]: -1 (0xffffffffffffffff) [0x0000000009141298 1]: 5 (0x0000000000000005) [data stack base at 0x0000000009141298] ok s" boot_" fopendir ok .s [data stack has 3 entries, top at 0x00000000091412a8] [0x00000000091412a8 0]: 0 (0x0000000000000000) [0x00000000091412a0 1]: -1 (0xffffffffffffffff) [0x0000000009141298 2]: 5 (0x0000000000000005) [data stack base at 0x0000000009141298] ok
Updated by Electric Monk over 4 years ago
- Status changed from In Progress to Closed
- % Done changed from 90 to 100
commit c0bb4f7308f9d7f3f31eb636c73ef07c6d19b5f3 Author: Toomas Soome <firstname.lastname@example.org> Date: 2019-04-29T15:19:42.000Z 10606 ficl: smatch errors: inconsistent indenting and unchecked function return 10699 loader: smatch cleanups for ficl 10885 loader: ficl pfopendir() should push FICL_FALSE in case of error Reviewed by: John Levon <email@example.com> Approved by: Dan McDonald <firstname.lastname@example.org>