]> git.feebdaed.xyz Git - 0xmirror/radare2.git/commitdiff
Fix null deref in dsession
authorpancake <pancake@nopcode.org>
Mon, 22 Dec 2025 12:25:32 +0000 (13:25 +0100)
committerpancake <pancake@nopcode.org>
Mon, 22 Dec 2025 12:25:32 +0000 (13:25 +0100)
libr/debug/dsession.c

index ee678aaa93d82e3ddea5d10c00b87cbd852f1601..a20842ab267eb1e23149e687dafb98a94264ecf1 100644 (file)
@@ -160,7 +160,9 @@ static bool _restore_memory_cb(void *user, const ut64 key, const void *value) {
        ut64 index = RVecDebugChangeMem_upper_bound (vmem, &(RDebugChangeMem){ (int)dbg->session->cnum, 0 }, cmp_cnum_mem);
        if (index > 0 && index <= RVecDebugChangeMem_length (vmem)) {
                RDebugChangeMem *mem = RVecDebugChangeMem_at (vmem, index - 1);
-               if (mem->cnum > dbg->session->cur_chkpt->cnum) {
+               if (!dbg->session->cur_chkpt) {
+                       dbg->iob.write_at (dbg->iob.io, key, &mem->data, 1);
+               } else if (mem->cnum > dbg->session->cur_chkpt->cnum) {
                        dbg->iob.write_at (dbg->iob.io, key, &mem->data, 1);
                }
        }