<br><br><div class="gmail_quote">On Sat, Mar 21, 2009 at 6:43 PM, Fons Adriaensen <span dir="ltr"><<a href="mailto:fons@kokkinizita.net">fons@kokkinizita.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Taking up Ardour's way of hard-linking imported<br>
files when possible, and even when 'no copy' has<br>
been requested, this has another unexpected<br>
consequence which hit me today.<br>
<br>
When the imported file is replaced with one having<br>
the same name, the Ardour session doesn't see the<br>
change, and continues to use the old file.</blockquote><div><br>Fons, I am not writing to disagree with your assessment of the potential confusion caused by this behaviour. I just want to be pedantic about the use of the word "replace".<br>
<br>If you "replaced" the file by opening it and writing new data to the file, Ardour would see the new version. However, in your case, I believe that "replacement" meant "remove and create a new file of the same name". POSIX filesystem semantics mean that the removal step left ardour's hard link as an "orphan". You removed the file. Ardour kept its own copy. This is, in fact, precisely what hard-linking was intended to ensure. Clearly, it fails to do so in cases where no hard link is possible, and for this reason, we should probably remove it because the either/or situation is not good for anyone.<br>
<br>How do we know that the new file is long enough? The right sample rate? We don't check these things every time we open a file, because our assumptions are that we did that when the file was first added to the session. The hard link was/is there to ensure that whatever you did to the "original", the version you added to the Ardour session lives on.<br>
<br>As I said at the outset, I agree with you that the current behaviour can cause confusion. Removing it, however, requires that we institute format & size checks on every file every time we open it.<br><br><br><br></div>
</div><br>