From 15e86fb4edfe57ee1a9ae92b0e84bbb97a8136d2 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Tue, 17 Apr 2018 23:51:39 -0700 Subject: [PATCH] SCP, DISK: Fix Coverity identified debug path null pointer dereferences --- scp.c | 2 ++ sim_disk.c | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/scp.c b/scp.c index 5072376b..7f2b84a2 100644 --- a/scp.c +++ b/scp.c @@ -6659,6 +6659,8 @@ const char *sim_uname (UNIT *uptr) DEVICE *d; char uname[CBUFSIZE]; +if (!uptr) + return ""; if (uptr->uname) return uptr->uname; d = find_dev_from_unit(uptr); diff --git a/sim_disk.c b/sim_disk.c index ee45e06a..99cb9b99 100644 --- a/sim_disk.c +++ b/sim_disk.c @@ -391,6 +391,7 @@ t_bool is_available; if (!(uptr->flags & UNIT_ATT)) /* attached? */ return FALSE; +ctx = (struct disk_context *)uptr->disk_ctx; switch (DK_GET_FMT (uptr)) { /* case on format */ case DKUF_F_STD: /* SIMH format */ is_available = TRUE; @@ -399,8 +400,6 @@ switch (DK_GET_FMT (uptr)) { /* case on format */ is_available = TRUE; break; case DKUF_F_RAW: /* Raw Physical Disk Access */ - ctx = (struct disk_context *)uptr->disk_ctx; - if (sim_os_disk_isavailable_raw (uptr->fileref)) { if (ctx->media_removed) { int32 saved_switches = sim_switches;