[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[2399] 2009-07-06 Pavel Roskin <address@hidden>
From: |
Pavel Roskin |
Subject: |
[2399] 2009-07-06 Pavel Roskin <address@hidden> |
Date: |
Tue, 07 Jul 2009 03:05:01 +0000 |
Revision: 2399
http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2399
Author: proski
Date: 2009-07-07 03:05:01 +0000 (Tue, 07 Jul 2009)
Log Message:
-----------
2009-07-06 Pavel Roskin <address@hidden>
* commands/search.c (search_fs): Fix potential NULL pointer
dereference.
Modified Paths:
--------------
trunk/grub2/ChangeLog
trunk/grub2/commands/search.c
Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog 2009-07-06 20:13:06 UTC (rev 2398)
+++ trunk/grub2/ChangeLog 2009-07-07 03:05:01 UTC (rev 2399)
@@ -1,5 +1,8 @@
2009-07-06 Pavel Roskin <address@hidden>
+ * commands/search.c (search_fs): Fix potential NULL pointer
+ dereference.
+
* commands/search.c (search_fs): Replace QUID macro with quid_fn
function pointer.
Modified: trunk/grub2/commands/search.c
===================================================================
--- trunk/grub2/commands/search.c 2009-07-06 20:13:06 UTC (rev 2398)
+++ trunk/grub2/commands/search.c 2009-07-07 03:05:01 UTC (rev 2399)
@@ -68,17 +68,19 @@
{
grub_fs_t fs;
int (*compare_fn) (const char *, const char *);
- grub_err_t (*quid_fn) (grub_device_t, char **);
fs = grub_fs_probe (dev);
compare_fn = is_uuid ? grub_strcasecmp : grub_strcmp;
- quid_fn = is_uuid ? fs->uuid : fs->label;
- if (fs && quid_fn)
+ if (fs && (is_uuid ? fs->uuid : fs->label))
{
char *quid;
- quid_fn (dev, &quid);
+ if (is_uuid)
+ fs->uuid (dev, &quid);
+ else
+ fs->label (dev, &quid);
+
if (grub_errno == GRUB_ERR_NONE && quid)
{
if (compare_fn (quid, key) == 0)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [2399] 2009-07-06 Pavel Roskin <address@hidden>,
Pavel Roskin <=