mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-16 17:12:23 -07:00
fix backslash escaping rules in cfg serialization; fix small scrolling (e.g. from trackpad) often being truncated to having no effect; fixed hanging when set-thread-name specifies a non-readable address
This commit is contained in:
@@ -2136,6 +2136,10 @@ dmn_ctrl_run(Arena *arena, DMN_CtrlCtx *ctx, DMN_RunCtrls *ctrls)
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
read_addr += 256;
|
||||
}
|
||||
}
|
||||
}
|
||||
e->kind = DMN_EventKind_SetThreadName;
|
||||
|
||||
@@ -5738,7 +5738,7 @@ df_cfg_escaped_from_raw_string(Arena *arena, String8 string)
|
||||
for(U64 idx = 0; idx <= string.size; idx += 1)
|
||||
{
|
||||
U8 byte = (idx < string.size ? string.str[idx] : 0);
|
||||
if(byte == 0 || byte == '\"')
|
||||
if(byte == 0 || byte == '\"' || byte == '\\')
|
||||
{
|
||||
String8 part = str8_substr(string, r1u64(split_start_idx, idx));
|
||||
str8_list_push(scratch.arena, &parts, part);
|
||||
@@ -5746,6 +5746,7 @@ df_cfg_escaped_from_raw_string(Arena *arena, String8 string)
|
||||
{
|
||||
default:{}break;
|
||||
case '\"':{str8_list_push(scratch.arena, &parts, str8_lit("\\\""));}break;
|
||||
case '\\':{str8_list_push(scratch.arena, &parts, str8_lit("\\\\"));}break;
|
||||
}
|
||||
split_start_idx = idx+1;
|
||||
}
|
||||
@@ -5775,7 +5776,8 @@ df_cfg_raw_from_escaped_string(Arena *arena, String8 string)
|
||||
switch(string.str[idx+1])
|
||||
{
|
||||
default:{}break;
|
||||
case '"':{extra_advance = 1; str8_list_push(scratch.arena, &parts, str8_lit("\""));}break;
|
||||
case '"': {extra_advance = 1; str8_list_push(scratch.arena, &parts, str8_lit("\""));}break;
|
||||
case '\\':{extra_advance = 1; str8_list_push(scratch.arena, &parts, str8_lit("\\"));}break;
|
||||
}
|
||||
}
|
||||
split_start_idx = idx+1+extra_advance;
|
||||
|
||||
+7
-2
@@ -2525,8 +2525,13 @@ ui_signal_from_box(UI_Box *box)
|
||||
{
|
||||
Swap(F32, delta.x, delta.y);
|
||||
}
|
||||
sig.scroll.x += (S16)(delta.x/30.f);
|
||||
sig.scroll.y += (S16)(delta.y/30.f);
|
||||
Vec2S16 delta16 = v2s16((S16)(delta.x/30.f), (S16)(delta.y/30.f));
|
||||
if(delta.x > 0 && delta16.x == 0) { delta16.x = +1; }
|
||||
if(delta.x < 0 && delta16.x == 0) { delta16.x = -1; }
|
||||
if(delta.y > 0 && delta16.y == 0) { delta16.y = +1; }
|
||||
if(delta.y < 0 && delta16.y == 0) { delta16.y = -1; }
|
||||
sig.scroll.x += delta16.x;
|
||||
sig.scroll.y += delta16.y;
|
||||
taken = 1;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user