<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/src/remove.c, branch v8.0</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=v8.0</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=v8.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2009-09-11T12:08:58Z</updated>
<entry>
<title>rm: avoid compiler warning</title>
<updated>2009-09-11T12:08:58Z</updated>
<author>
<name>Eric Blake</name>
<email>ebb9@byu.net</email>
</author>
<published>2009-09-04T04:45:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=398749b0cc49773320e6bc56eafabe7e85437412'/>
<id>urn:sha1:398749b0cc49773320e6bc56eafabe7e85437412</id>
<content type='text'>
* src/remove.c (rm_fts): Don't allow fall-through when assertions
are disabled.
</content>
</entry>
<entry>
<title>rm: use gnulib faccessat</title>
<updated>2009-09-11T12:08:58Z</updated>
<author>
<name>Eric Blake</name>
<email>ebb9@byu.net</email>
</author>
<published>2009-09-04T03:59:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=c7563435034fe72cb7fa4f8129062f18eef2906d'/>
<id>urn:sha1:c7563435034fe72cb7fa4f8129062f18eef2906d</id>
<content type='text'>
* bootstrap.conf (gnulib_modules): Add faccessat.  Replace strdup
with strdup-posix.
* m4/jm-macros.m4 (coreutils_MACROS): Revert previous change, now
that gnulib does it for us.
* src/remove.c (write_protected_non_symlink): Use faccessat in
more situations.
</content>
</entry>
<entry>
<title>rm: improve efficiency of rm -r (without -f) from O(N^2) to O(N)</title>
<updated>2009-09-11T12:08:58Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-03T13:15:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=722287e443c93e04e724e2812857a395cfab0b60'/>
<id>urn:sha1:722287e443c93e04e724e2812857a395cfab0b60</id>
<content type='text'>
where N is the depth of the deepest hierarchy rm is processing.
* src/remove.c (write_protected_non_symlink): Use faccessat to
avoid O(N)-per-entry cost of calling euidaccess.
* m4/jm-macros.m4 (coreutils_MACROS): Check for faccessat.
* NEWS (Improvements): Mention it.
</content>
</entry>
<entry>
<title>build: placate gcc's new -Wskip-jump-init</title>
<updated>2009-09-11T12:08:58Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-08-15T15:22:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=9966c92dd4851db611ad88fc1eb68b01fffcaea3'/>
<id>urn:sha1:9966c92dd4851db611ad88fc1eb68b01fffcaea3</id>
<content type='text'>
* remove.c (rm_fts): Put braces around each of the two offending blocks.
* configure.ac: Don't turn off -Wjump-misses-init.
With the rewrite of remove.c, it is no longer needed.
</content>
</entry>
<entry>
<title>rm: rewrite to use fts</title>
<updated>2009-09-11T12:08:51Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-07-12T16:15:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=4f73ecaf7def2a7bdc381eee2036f6539df01e7d'/>
<id>urn:sha1:4f73ecaf7def2a7bdc381eee2036f6539df01e7d</id>
<content type='text'>
* remove.c: Don't include "unlinkdir.h"; no longer used.
Do not include &lt;setjmp.h&gt; or "cycle-check.h".  Likewise.
Include "xfts.h".
(dir_name, dir_len): Remove definitions.
(CONSECUTIVE_READDIR_UNLINK_THRESHOLD): Likewise.
(INODE_SORT_DIR_ENTRIES_THRESHOLD, NEED_REWIND, D_TYPE): Likewise.
(struct dirstack_state, Dirstack_state): Likewise.
(g_buf, g_n_allocated): Remove declarations.
(hash_freer, hash_compare_strings, rm_malloc): Remove functions.
(rm_free, push_dir, top_dir, pop_dir, right_justify): Likewise.
(full_filename0, xfull_filename, full_filename_): Likewise.
(AD_stack_height, AD_stack_top, AD_stack_pop, AD_stack_clear): Likewise.
(obstack_init_minimal, ds_init, ds_clear, ds_free): Likewise.
(AD_pop_and_chdir, AD_ensure_initialized, AD_mark_helper): Likewise.
(AD_mark_as_unremovable, AD_mark_current_as_unremovable): Likewise.
(AD_push_initial, AD_push, AD_push, AD_is_removable): Likewise.
(write_protected_non_symlink): Change 3rd parameter from
dirstack_state "ds" to full_name.
(prompt): Adjust parameters.  Now, state comes from FTS/FTSENT pair.
Those replace fd_cwd and "ds".  Remove "filename".  Remove pdirent_type
in favor of new "is_dir" parameter.  Rename is_empty to is_empty_p.
(DO_RMDIR, DO_UNLINK): Remove definitions.
(remove_entry, fd_to_subdirp, compare_ino): Remove functions.
(dirent_count, dirent_inode_sort_may_be_useful): Likewise.
(preprocess_dir): Likewise.
(fts_skip_tree, mark_ancestor_dirs, excise, rm_fts): New functions.
(remove_cwd_entries, remove_dir, rm_1): Remove functions.
(rm): Rewrite as a simple loop calling fts_read and dispatching
each entry via rm_fts.
* src/rm.c (main): Adapt to new signature of rm().
* bootstrap.conf (gnulib_modules): Remove unlinkdir, no longer used.
* src/Makefile.am (sc_tight_scope): Also recognize an extern "enum"
declaration.
* tests/rm/empty-name: Adjust expected output to match new diagnostic.
* NEWS (Improvements): Mention it.
</content>
</entry>
<entry>
<title>build: avoid unused variable warnings on cygwin</title>
<updated>2009-08-28T18:56:53Z</updated>
<author>
<name>Eric Blake</name>
<email>ebb9@byu.net</email>
</author>
<published>2009-08-28T17:03:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=359fa92f2a08991f261fad12b5a1809cff108e9b'/>
<id>urn:sha1:359fa92f2a08991f261fad12b5a1809cff108e9b</id>
<content type='text'>
* src/copy.c (clone_file, copy_attr_by_fd, copy_attr_by_name):
Mark up unused variables.
* src/remove.c (dirent_inode_sort_may_be_useful): Likewise.
</content>
</entry>
<entry>
<title>global: convert indentation-TABs to spaces</title>
<updated>2009-08-25T07:21:00Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-08-22T16:56:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=5e778f7c8d1ecf3d8f11385db013af2ba026e2a5'/>
<id>urn:sha1:5e778f7c8d1ecf3d8f11385db013af2ba026e2a5</id>
<content type='text'>
Transformed via this shell code:
t=$'\t'
git ls-files \
  | grep -vE '(^|/)((GNU)?[Mm]akefile|ChangeLog)|\.(am|mk)$' \
  | grep -vE 'tests/pr/|help2man' \
  | xargs grep -lE "^ *$t" \
  | xargs perl -MText::Tabs -ni -le \
    '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'
</content>
</entry>
<entry>
<title>maint: update all Copyright year lists to include 2009</title>
<updated>2009-06-23T20:33:15Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-06-23T20:33:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=2232b4d08fdc8ff3ae8e7aa1fa28c8315c41d9ad'/>
<id>urn:sha1:2232b4d08fdc8ff3ae8e7aa1fa28c8315c41d9ad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>maint: Clarify ambiguous refs to Linux kernels or GNU/Linux systems</title>
<updated>2009-04-07T17:57:53Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-04-06T06:43:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=9fdf5845fc87135c4f68bce79f72a25d07130240'/>
<id>urn:sha1:9fdf5845fc87135c4f68bce79f72a25d07130240</id>
<content type='text'>
* README-prereq: s_linux_GNU/Linux_ or s_linux_Linux kernel_
* README-valgrind: ditto
* src/chown-core.c: ditto
* src/dd.c: ditto
* src/df.c: ditto
* src/ls.c: ditto
* src/mv.c: ditto
* src/pwd.c: ditto
* src/remove.c: ditto
* src/shred.c: ditto
* src/stat.c: ditto
* src/su.c: ditto
* src/system.h: ditto
* src/timeout.c: ditto
* src/truncate.c: ditto
</content>
</entry>
<entry>
<title>reflect gnulib's removal of lstat.h</title>
<updated>2008-10-21T06:10:29Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2008-10-21T05:55:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=08c38ab7cbc0c6f3721885256ae3634f1e76f174'/>
<id>urn:sha1:08c38ab7cbc0c6f3721885256ae3634f1e76f174</id>
<content type='text'>
* src/copy.h: Don't include "lstat.h".
* src/ls.c: Likewise.
* src/remove.c: Likewise.
* src/rm.c: Likewise.
</content>
</entry>
</feed>
