diff options
Diffstat (limited to 'src/coredump/_UCD_create.c')
-rw-r--r-- | src/coredump/_UCD_create.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/coredump/_UCD_create.c b/src/coredump/_UCD_create.c index 9b4b7fe3..21fd0b92 100644 --- a/src/coredump/_UCD_create.c +++ b/src/coredump/_UCD_create.c @@ -218,7 +218,8 @@ _UCD_create(const char *filename) goto err; } - ui->prstatus = &ui->threads[0]; + ui->prstatus = &ui->threads[0].prstatus; + ui->fpregset = &ui->threads[0].fpregset; return ui; @@ -234,8 +235,10 @@ int _UCD_get_num_threads(struct UCD_info *ui) void _UCD_select_thread(struct UCD_info *ui, int n) { - if (n >= 0 && n < ui->n_threads) - ui->prstatus = &ui->threads[n]; + if (n >= 0 && n < ui->n_threads) { + ui->prstatus = &ui->threads[n].prstatus; + ui->fpregset = &ui->threads[n].fpregset; + } } pid_t _UCD_get_pid(struct UCD_info *ui) |