mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

45 lines
1.7 KiB

# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
#
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
#
# ROCK Linux: rock-src/package/base/util-linux/nice-mount-paths.patch
# ROCK Linux is Copyright (C) 1998 - 2004 Clifford Wolf
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# --- ROCK-COPYRIGHT-NOTE-END ---
--- ./mount/mount.c.orig Wed Mar 21 10:07:59 2001
+++ ./mount/mount.c Wed Mar 21 10:12:15 2001
@@ -1061,6 +1061,23 @@
/* Substitute values in opts, if required */
opts = usersubst(opts);
+ /* make the node a nice absolute path name */
+ if (node[0] && node[0]!='/') {
+ char *thisdir=get_current_dir_name();
+ char *oldnode=node;
+ if (chdir(node) == 0) {
+ /* we will never free this variable ... */
+ node=get_current_dir_name();
+ chdir(thisdir);
+ if (verbose) printf("mount: change '%s' to '%s'\n",oldnode,node);
+ }
+ free(thisdir);
+ }
+ if (strlen(node)>=3 && node[strlen(node)-1]=='/') {
+ if (verbose) printf("mount: remove the leading '/' in '%s'\n",node);
+ node[strlen(node)-1]=0;
+ }
+
/* Merge the fstab and command line options. */
if (opts == NULL)
opts = cmdlineopts;