truncate now correctly sets mtime always. Before this fix, mtime was not
updated if truncated file was of zero length or if new filesize was bigger
then old.
Problem was noticed by Matthias Andree <ma@dt.e-technik.uni-dortmund.de>
}
if ( n_file_size == 0 || n_file_size < n_new_file_size ) {
- pathrelse(&s_search_path);
- return;
+ goto update_and_out ;
}
/* Update key to search for the last file item. */
"PAP-5680: truncate did not finish: new_file_size %Ld, current %Ld, oid %d\n",
n_new_file_size, n_file_size, s_item_key.on_disk_key.k_objectid);
+update_and_out:
if (update_timestamps) {
// this is truncate, not file closing
p_s_inode->i_mtime = p_s_inode->i_ctime = CURRENT_TIME;