[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    kwikdisk and udev-created symlinks
From:       Kevin Gilbert <kev.gilbert () cdu ! edu ! au>
Date:       2006-07-03 4:35:36
Message-ID: 200607031353.48764.kev.gilbert () cdu ! edu ! au
[Download RAW message or body]

[Attachment #2 (multipart/signed)]

[Attachment #4 (multipart/alternative)]


Hi,

The is an annoying "feature" in kwikdisk. If you use udev to create a symlink to a \
device and the path name of the symlink is longer than that of the raw device path, \
kwikdisk replaces any configured mount command with the default command.

What I propose is that the "length" be redefined as the number of slashes in the path \
names. The following patch achieves that and retains the configured udev-created \
symlink.

--- kdf/disklist.cpp.orig       2006-01-20 02:19:24.000000000 +0930
+++ kdf/disklist.cpp    2006-07-03 13:44:14.000000000 +0930
@@ -470,7 +470,9 @@

       // Same device name, but maybe one is a symlink and the other is its target
       // Keep the shorter one then, /dev/hda1 looks better than \
                /dev/ide/host0/bus0/target0/lun0/part1
-      if ( disk->deviceName().length() > olddisk->deviceName().length() )
+      // but redefine "shorter" to be the number of slashes in the path as a count \
on characters +      // breaks legitimate symlinks created by udev
+      if ( disk->deviceName().contains( '/' ) > olddisk->deviceName().contains( '/' \
) )  disk->setDeviceName(olddisk->deviceName());

       //FStab after an older DF ... needed for critFull


Cheers,

Kevin


[Attachment #7 (text/html)]

<html><head><meta name="qrichtext" content="1" /></head><body \
style="font-size:12pt;font-family:Nimbus Sans L"> <p><span \
style="color:#000000">Hi,</span></p> <p></p>
<p><span style="color:#000000">The is an annoying &quot;feature&quot; in kwikdisk. If \
you use udev to create a symlink to a device and the path name of the symlink is \
longer than that of the raw device path, kwikdisk replaces any configured mount \
command with the default command.</span></p> <p></p>
<p><span style="color:#000000">What I propose is that the &quot;length&quot; be \
redefined as the number of slashes in the path names. The following patch achieves \
that and retains the configured udev-created symlink.</span></p> <p></p>
<p><span style="font-family:Nimbus Mono L;color:#000000">--- kdf/disklist.cpp.orig    \
2006-01-20 02:19:24.000000000 +0930</span></p> <p><span style="font-family:Nimbus \
Mono L;color:#000000">+++ kdf/disklist.cpp    2006-07-03 13:44:14.000000000 \
+0930</span></p> <p><span style="font-family:Nimbus Mono L;color:#000000">@@ -470,7 \
+470,9 @@</span></p> <p></p>
<p><span style="font-family:Nimbus Mono L;color:#000000">       // Same device name, \
but maybe one is a symlink and the other is its target</span></p> <p><span \
style="font-family:Nimbus Mono L;color:#000000">       // Keep the shorter one then, \
/dev/hda1 looks better than /dev/ide/host0/bus0/target0/lun0/part1</span></p> \
<p><span style="font-family:Nimbus Mono L;color:#000000">-      if ( \
disk-&gt;deviceName().length() &gt; olddisk-&gt;deviceName().length() )</span></p> \
<p><span style="font-family:Nimbus Mono L;color:#000000">+      // but redefine \
&quot;shorter&quot; to be the number of slashes in the path as a count on \
characters</span></p> <p><span style="font-family:Nimbus Mono L;color:#000000">+      \
// breaks legitimate symlinks created by udev</span></p> <p><span \
style="font-family:Nimbus Mono L;color:#000000">+      if ( \
disk-&gt;deviceName().contains( '/' ) &gt; olddisk-&gt;deviceName().contains( '/' ) \
)</span></p> <p><span style="font-family:Nimbus Mono L;color:#000000">           \
disk-&gt;setDeviceName(olddisk-&gt;deviceName());</span></p> <p></p>
<p><span style="font-family:Nimbus Mono L;color:#000000">       //FStab after an \
older DF ... needed for critFull</span></p> <p></p>
<p></p>
<p><span style="color:#000000">Cheers,</span></p>
<p></p>
<p><span style="color:#000000">Kevin</span></p>
</body></html>


[Attachment #8 (application/pgp-signature)]

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic