<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/src/remove.c, branch v6.2</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=v6.2</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=v6.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2006-09-11T13:22:04Z</updated>
<entry>
<title>* src/remove.c (remove_dir): Move new cache_stat_init call onto</title>
<updated>2006-09-11T13:22:04Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-09-11T13:22:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=75b99e8f20be498c1e87ea57a8db0a8afafb9eb6'/>
<id>urn:sha1:75b99e8f20be498c1e87ea57a8db0a8afafb9eb6</id>
<content type='text'>
it's own line.
(rm_1): Move declaration of "st" and new cache_stat_init call
"down" to nearer where they're used.
</content>
</entry>
<entry>
<title>Don't include dirname.h, since system.h does it now.</title>
<updated>2006-09-03T02:54:51Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2006-09-03T02:54:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=e5fc4f24aae41c3028c1dff46f00a103db5bfd44'/>
<id>urn:sha1:e5fc4f24aae41c3028c1dff46f00a103db5bfd44</id>
<content type='text'>
(cache_fstatat, cache_stat_init): New functions.
(cache_statted, cache_stat_ok): New functions.
(write_protected_non_symlink): Remove struct stat ** buf_p arg,
which is no longer needed with the new functions.  All callers
changed.
(prompt, is_dir_lstat, remove_entry, remove_dir):
New struct stat * arg.  All callers changed.
(write_protected_non_symlink, prompt, is_dir_lstat, remove_entry):
(remove_cwd_entries, remove_dir, rm_1):
Use and maintain the file status cache.
(prompt, remove_entry): Omit the first "directory" in the diagnostic
"Cannot remove directory `foo': is a directory".  This causes "rm"
to pass a test case that it would otherwise fail now that it
"knows" more about its argument.  I think the diagnostic is better
without the first "directory" anyway.
(prompt): Remove the no-longer-needed IS_DIR arg; all callers changed.
(rm_1): Reject attempts to remove /, ./, or ../.
</content>
</entry>
<entry>
<title>* src/system.h (DOT_OR_DOTDOT): Remove macro.  Rewrite as a...</title>
<updated>2006-08-27T19:34:28Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-08-27T19:34:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=07446625096ddeb9246fb36572d5fe644f56cd1f'/>
<id>urn:sha1:07446625096ddeb9246fb36572d5fe644f56cd1f</id>
<content type='text'>
(dot_or_dotdot): ...new static inline function.
* src/remove.c (rm_1): Reflect this renaming.
* src/ls.c (basename_is_dot_or_dotdot): Likewise.
</content>
</entry>
<entry>
<title>Plug another unusual leak.</title>
<updated>2006-07-03T17:38:20Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-07-03T17:38:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=a9cf203e2d4a0f94cb2ade11dfbdb903fac70d91'/>
<id>urn:sha1:a9cf203e2d4a0f94cb2ade11dfbdb903fac70d91</id>
<content type='text'>
(AD_mark_helper): Free malloc'd filename if hash_insert says
that string is already in the hash table.
</content>
</entry>
<entry>
<title>The dev/inode of the topmost directory in each hierarchy were not</title>
<updated>2006-07-03T15:10:35Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-07-03T15:10:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=a47c5ca291f51f1efcf3322b7e0aa0e31e6404e8'/>
<id>urn:sha1:a47c5ca291f51f1efcf3322b7e0aa0e31e6404e8</id>
<content type='text'>
being recorded.
* src/remove.c (remove_cwd_entries): Don't call cycle_check here.
(AD_push): Call it from here instead.
</content>
</entry>
<entry>
<title>Fix two small leaks.</title>
<updated>2006-07-03T13:14:01Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-07-03T13:14:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=2741ffb8b4cdf076c5e973931c9afb474f1c5306'/>
<id>urn:sha1:2741ffb8b4cdf076c5e973931c9afb474f1c5306</id>
<content type='text'>
* src/remove.c (AD_stack_clear): New function.
(rm_1): Use it.
(AD_pop_and_chdir): Free *prev_dir just before longjmp.
</content>
</entry>
<entry>
<title>* src/system.h (CLOSEDIR): Remove.  All uses changed to closedir.</title>
<updated>2006-06-28T22:21:48Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2006-06-28T22:21:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=0b24b840446f8a8427052816017e36f75f476810'/>
<id>urn:sha1:0b24b840446f8a8427052816017e36f75f476810</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Attempt rmdir (actually, unlinkat-with-AT_REMOVEDIR) upon any</title>
<updated>2006-06-26T13:29:48Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-06-26T13:29:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=7590adf9b94f168f0dd7259d1b1c32e88f58114f'/>
<id>urn:sha1:7590adf9b94f168f0dd7259d1b1c32e88f58114f</id>
<content type='text'>
fd_to_subdirp failure, not just when errno == EACCES.
* src/remove.c (remove_dir): Use unlinkat-with-AT_REMOVEDIR, not
rmdir, here, even though rmdir may happen to be adequate.
</content>
</entry>
<entry>
<title>* NEWS: rm no longer fails to remove an empty, unreadable directory</title>
<updated>2006-06-26T13:02:01Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-06-26T13:02:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=78b166d1b163df894d567b79d3bb5744156fb0fe'/>
<id>urn:sha1:78b166d1b163df894d567b79d3bb5744156fb0fe</id>
<content type='text'>
* src/remove.c (remove_cwd_entries): If we can't open a directory,
and the failure is not being ignored, try to remove the directory
with rmdir (aka unlinkat-with-AT_REMOVEDIR), in case it's empty.
Problem report and test case from Paul Eggert in
&lt;http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/7425&gt;.
* tests/rm/empty-inacc: New test, for the above.
</content>
</entry>
<entry>
<title>tweak grammar in comment</title>
<updated>2006-06-25T19:27:19Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2006-06-25T19:27:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=59bafa5a0cbb8baed511b48fea996e0c260aebed'/>
<id>urn:sha1:59bafa5a0cbb8baed511b48fea996e0c260aebed</id>
<content type='text'>
</content>
</entry>
</feed>
