aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/grub2-pcbsd/files/patch-grub-core_loader_i386_bsd.c
blob: b2e3d9793f4f53c5021587846d6cc01744a00ac0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
--- grub-core/loader/i386/bsd.c.orig	2015-01-30 16:34:55 UTC
+++ grub-core/loader/i386/bsd.c
@@ -416,11 +416,14 @@ grub_freebsd_add_meta_module (const char
 			      grub_addr_t addr, grub_uint32_t size)
 {
   const char *name;
-  name = grub_strrchr (filename, '/');
+ /* Don't strip the full path, some FreeBSD functionality, such
+  * as dtrace, rely on this. Instead only strip out the portion after ZFS @ sign */
+  name = grub_strrchr (filename, '@');
   if (name)
     name++;
   else
     name = filename;
+
   if (grub_strcmp (type, "/boot/zfs/zpool.cache") == 0)
     name = "/boot/zfs/zpool.cache";