On 13.02.2012 10:43, Klaus Schmidinger wrote:
On 01/27/2012 01:04 PM, Oliver Endriss wrote:
On Thursday 26 January 2012 11:07:18 Klaus Schmidinger wrote:
On 25.01.2012 14:11, Oliver Endriss wrote:
On Wednesday 25 January 2012 10:29:16 Klaus Schmidinger wrote:
On 17.01.2012 14:26, sundararaj reel wrote:

[...]

Well, with this patch, symbolic links are not displayed at all on my
VDR machine, whereas with sundararaj reel's fix they are displayed
correctly.

So what you're saying it that this...

----------------------------------------------------------------------------------------------

--- a/recording.c
+++ b/recording.c
@@ -1120,9 +1120,13 @@ void cRecordings::ScanVideoDir(const char
*DirName, bool Foreground, int LinkLev
continue;
}
Link = 1;
+#if 0
+ // do not resolve the symbolic links in paths to real path
+ // thereby keeping all the recordings under one directory
buffer = ReadLink(buffer);
if (!*buffer)
continue;
+#endif
if (stat(buffer, &st) != 0)
continue;
}
----------------------------------------------------------------------------------------------


...works, while this...

----------------------------------------------------------------------------------------------

--- recording.c 2012/01/25 09:32:39 2.45
+++ recording.c 2012/01/26 10:02:29
@@ -1120,11 +1120,6 @@
continue;
}
Link = 1;
- buffer = ReadLink(buffer);
- if (!*buffer)
- continue;
- if (stat(buffer, &st) != 0)
- continue;
}
if (S_ISDIR(st.st_mode)) {
if (endswith(buffer, deleted ? DELEXT : RECEXT)) {
----------------------------------------------------------------------------------------------


...doesn't?

I find that hard to believe, because the only difference here is that
the second version removes the stat() call, which is superfluous if
'buffer' is no longer modified.

Haven't really looked at the code, until now, and I also do not exactly know what the call to stat does and also didn't try to understand the whole picture now, but your patch does not simply remove just the call to stat, but also a *continue* statement from the *while* loop, this could have strong implications, so just please consider analyzing the issue with respect to that.

Regards,
Lucian

_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr

Reply via email to