svn commit: r193719 - head/sys/boot/i386/libi386

John Baldwin jhb at FreeBSD.org
Mon Jun 8 15:07:36 UTC 2009


Author: jhb
Date: Mon Jun  8 15:07:35 2009
New Revision: 193719
URL: http://svn.freebsd.org/changeset/base/193719

Log:
  Don't attempt to free the GPT partition list for a disk with an empty GPT.
  
  Submitted by:	Yuri Pankov  yuri.pankov of gmail
  MFC after:	3 days

Modified:
  head/sys/boot/i386/libi386/biosdisk.c

Modified: head/sys/boot/i386/libi386/biosdisk.c
==============================================================================
--- head/sys/boot/i386/libi386/biosdisk.c	Mon Jun  8 15:02:30 2009	(r193718)
+++ head/sys/boot/i386/libi386/biosdisk.c	Mon Jun  8 15:07:35 2009	(r193719)
@@ -990,7 +990,8 @@ bd_open_gpt(struct open_disk *od, struct
 
 out:
     if (error) {
-	free(od->od_partitions);
+	if (od->od_nparts > 0)
+	    free(od->od_partitions);
 	od->od_flags &= ~BD_GPTOK;
     }
     return (error);
@@ -1044,7 +1045,7 @@ bd_closedisk(struct open_disk *od)
 	delay(3000000);
 #endif
 #ifdef LOADER_GPT_SUPPORT
-    if (od->od_flags & BD_GPTOK)
+    if (od->od_flags & BD_GPTOK && od->od_nparts > 0)
 	free(od->od_partitions);
 #endif
     free(od);


More information about the svn-src-head mailing list