* W32 debug issues:
Fill debug info (executable path and username)
Debug event STATUS_X86_SINGLE_STEP instead of EVENT_SINGLE_STEP when debug a x86 binary using radare 64 bits
* Fix cast types
* Fix the use after free by removing instruction which was overriding 'r_cons_instance.num' struct by a new mallocated struct which is free at the end
* Fix new segv by saving old num and restore it before free is called
* spaces to tabs
* fix out-of-bounds read in r_search_strings_update
* Remove static variables searchhits maplist maxhits first_hit in cmd_search.c
* Change semantics of r_search_hit_new (update kw->count s->nhits in it), return 2 if search.maxhits is reached and stop searching immediately
* honor search.maxhits in r_search_regexp_update
* Refactor _cb_hit, remove bckwrds/do_bckwrd_srch and static cmdhit
* Fix mem leak in regexp.c
* Add support for /d (delta) /bd (backward + delta) when crossing blocksize boundaries
The search range will be the intersection of at most 3 intervals:
* search.in
* [search.from, search.to) if one of them is not UT64_MAX (default), which means the range is specified
* [core->offset, 2**64) if /f is used, [0, core->offset) if /b is used
Name the intersection `search_itv`
For each search boundary given by search.in, individual search is done in the intersection of it and search_itv
* fix r_search_mybinparse_update when locating `a+a+b` in `a+a+a+b` where len(a) > 1, e.g. locating `ababc` in `abababc`
* fix /d (r_search_deltakey_update) with same issue
* fix search.distance
* fix binmask
* swap the order of the nested loop
* add RSearch::maxhits . More work later
* add RSearch::data for data used by matching algorithm
before:
for (i = 0; i < len; i++)
r_list_foreach (s->kws, iter, kw)
after:
r_list_foreach (s->kws, iter, kw)
for (i = 0; i < len; i++)
rationale:
+ searching for more than one needles is rare. the branches used in inner loop harms performance
+ it's cumbersome to bookkeep for each `kw` in advanced searching algorithms
* initial work on fixing overlapping issues in graph mode
* better vertical gap calculation and minor fixes
* fix backedges overlapping issue
* fix backedge height and remove unnecessary functions
* horizontal graph
* add edge info for update graph size
graph size for horizontal layout
* fix leaks in agraph_print_edges
* Move r_core_cmd_help features to grep.c:r_cons_cmd_help to avoid dependency on r_core from r_cons
* Beautify r_cons_cmd_help & fix wp? & p?
* Fix#8164 recursive help (and add partial support for ??* ???*) & NULL terminate fz? Sl? Sr?
The support for ???* is partial because the current ad-hoc command
parser is obscure and hard to extend.