Skip to content

1.4.1

Choose a tag to compare

@Oscar65 Oscar65 released this 01 Mar 15:23
· 45 commits to master since this release
Version 1.4.1

Fixed bug when copy 0x1000 bytes at end, leave cursor beyond end of file and exit with CTRL+X. Returns this error:
  display.c:156 Error calling ncurses refresh.
  Error calling ncurses delwin.
  the long seek failed (-1 instead of 1073770596), leaving :(
The bug was because readFile uses pointer buffer deleted before in function quit().

This is the output from valgrind:
oscar@localhost hexedit.ssh]$ valgrind ./hexedit file16G
==13874== Memcheck, a memory error detector
==13874== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==13874== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==13874== Command: ./hexedit file16G
==13874==
==13874== Invalid write of size 4
==13874==    at 0x4C2AAAC: memset (mc_replace_strmem.c:1011)
==13874==    by 0x4043B8: readFile (file.c:63)
==13874==    by 0x402CDB: set_base (display.c:70)
==13874==    by 0x402E34: set_cursor (display.c:35)
==13874==    by 0x404214: discardEdited (page.c:56)
==13874==    by 0x401952: quit (hexedit.c:151)
==13874==    by 0x405654: key_to_function (interact.c:527)
==13874==    by 0x401B17: main (hexedit.c:124)
==13874==  Address 0x58df350 is 0 bytes inside a block of size 1,656 free'd
==13874==    at 0x4C27430: free (vg_replace_malloc.c:446)
==13874==    by 0x401930: quit (hexedit.c:148)
==13874==    by 0x405654: key_to_function (interact.c:527)
==13874==    by 0x401B17: main (hexedit.c:124)
==13874==
display.c:156 Error calling ncurses refresh.
Error calling ncurses delwin.
the long seek failed (-1 instead of 1073774700), leaving :(
==13874==
==13874== HEAP SUMMARY:
==13874==     in use at exit: 543,634 bytes in 349 blocks
==13874==   total heap usage: 443 allocs, 94 frees, 822,969 bytes allocated
==13874==
==13874== LEAK SUMMARY:
==13874==    definitely lost: 0 bytes in 0 blocks
==13874==    indirectly lost: 0 bytes in 0 blocks
==13874==      possibly lost: 0 bytes in 0 blocks
==13874==    still reachable: 543,634 bytes in 349 blocks
==13874==         suppressed: 0 bytes in 0 blocks
==13874== Rerun with --leak-check=full to see details of leaked memory
==13874==
==13874== For counts of detected and suppressed errors, rerun with: -v
==13874== ERROR SUMMARY: 414 errors from 1 contexts (suppressed: 6 from 6)