From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1JMnzC-0004RG-KS for mharc-grub-devel@gnu.org; Wed, 06 Feb 2008 12:23:02 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JMnzA-0004Pr-Jb for grub-devel@gnu.org; Wed, 06 Feb 2008 12:23:00 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JMnz9-0004P1-5C for grub-devel@gnu.org; Wed, 06 Feb 2008 12:22:59 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JMnz8-0004Or-Uo for grub-devel@gnu.org; Wed, 06 Feb 2008 12:22:58 -0500 Received: from aybabtu.com ([69.60.117.155]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JMnz8-0002Mn-Kg for grub-devel@gnu.org; Wed, 06 Feb 2008 12:22:58 -0500 Received: from [192.168.10.6] (helo=thorin) by aybabtu.com with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.63) (envelope-from ) id 1JMnz5-0002Wa-QM for grub-devel@gnu.org; Wed, 06 Feb 2008 18:22:57 +0100 Received: from rmh by thorin with local (Exim 4.63) (envelope-from ) id 1JMnMn-0000qI-Tx for grub-devel@gnu.org; Wed, 06 Feb 2008 17:43:21 +0100 Date: Wed, 6 Feb 2008 17:43:21 +0100 From: Robert Millan To: grub-devel@gnu.org Message-ID: <20080206164321.GA3192@thorin> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="J/dobhs11T7y2rNN" Content-Disposition: inline Content-Transfer-Encoding: 8bit Organization: free as in freedom X-Message-Flag: Worried about Outlook viruses? Switch to Thunderbird! www.mozilla.com/thunderbird X-Debbugs-No-Ack: true User-Agent: Mutt/1.5.13 (2006-08-11) X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Subject: [PATCH] simplify partmap probe X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Feb 2008 17:23:01 -0000 --J/dobhs11T7y2rNN Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Simplification for partmap probing function. -- Robert Millan I know my rights; I want my phone call! What use is a phone call… if you are unable to speak? (as seen on /.) --J/dobhs11T7y2rNN Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="simplify_partmap_probe.diff" * util/grub-probe.c (probe): Simplify partmap probing (with the assumption that the first word up to the underscore equals to the module name). diff -x configure -x config.h.in -x CVS -x '*~' -x '*.mk' -urp ../grub2/util/grub-probe.c ./util/grub-probe.c --- ../grub2/util/grub-probe.c 2008-01-25 23:33:57.000000000 +0100 +++ ./util/grub-probe.c 2008-02-06 17:32:28.000000000 +0100 @@ -133,21 +133,22 @@ probe (const char *path) if (print == PRINT_PARTMAP) { + char *name; + char *underscore; + if (dev->disk->partition == NULL) grub_util_error ("Cannot detect partition map for %s", drive_name); - if (strcmp (dev->disk->partition->partmap->name, "amiga_partition_map") == 0) - printf ("amiga\n"); - else if (strcmp (dev->disk->partition->partmap->name, "apple_partition_map") == 0) - printf ("apple\n"); - else if (strcmp (dev->disk->partition->partmap->name, "gpt_partition_map") == 0) - printf ("gpt\n"); - else if (strcmp (dev->disk->partition->partmap->name, "pc_partition_map") == 0) - printf ("pc\n"); - else if (strcmp (dev->disk->partition->partmap->name, "sun_partition_map") == 0) - printf ("sun\n"); - else - grub_util_error ("Unknown partition map %s", dev->disk->partition->partmap->name); + name = strdup (dev->disk->partition->partmap->name); + if (! name) + grub_util_error ("not enough memory"); + + underscore = strchr (name, '_'); + if (! underscore) + grub_util_error ("Invalid partition map %s", name); + + *underscore = '\0'; + printf ("%s\n", name); goto end; } --J/dobhs11T7y2rNN--