Prechádzať zdrojové kódy

sysvars_marshall: handle NULL pointers correctly

H. Peter Anvin 1 rok pred
rodič
commit
645eaec44d
1 zmenil súbory, kde vykonal 1 pridanie a 1 odobranie
  1. 1 1
      esp32/max80/sysvars_marshall.c

+ 1 - 1
esp32/max80/sysvars_marshall.c

@@ -36,7 +36,7 @@ size_t sysvar_marshall(enum sysvars_enum first, size_t count,
     while (count--) {
 	sysvar_t vv = *vp++ = *v++;
 	sysvar_type_t type = *t++;
-	if (type->datasize) {
+	if (type->datasize && vv.v_ptr) {
 	    size_t dsize = type->datasize(vv);
 	    size_t adj_bytes = (bytes + align_mask) & ~align_mask;
 	    if (adj_bytes + dsize > bufsize)