[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Findutils-patches] [bug #37683] -inum doesn't work on ext4 file systems

From: Bernhard Voelker
Subject: [Findutils-patches] [bug #37683] -inum doesn't work on ext4 file systems with find 4.5.10
Date: Mon, 12 Nov 2012 19:35:52 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:16.0) Gecko/20121025 Thunderbird/16.0.2

[please CC me, as I'm not subscribed]

I'm not sure to which list I should send this patch, so I reply
both to Philipp's message on bug-findutils and on patches.
Sorry. ;-)

OpenSuSE-12.2 is still using --without-fts, so the default find
program doesn't work with -inum there.

BTW: Why is the latest version on still 4.4.2
(3.5 years old) while distros already use newer versions?

Have a nice day,

>From 3a1f9a36a32814448891f4b3e82d358336afadb9 Mon Sep 17 00:00:00 2001
From: Bernhard Voelker <address@hidden>
Date: Mon, 12 Nov 2012 19:29:45 +0100
Subject: [PATCH] Fix -inum option in non-FTS find

The call 'find . -inum N' did not work because the stat buffer
in process_path is unitialized. As a result, get_info() did
not set todo = true and failed to get the stat info for the
current pathname. The subsequent comparison in pred_inum therefore
used a random value on the stack to compare with.

* find/find.c (process_path): Initialize stat_buf.

Reported-by: Philipp Thomas
 find/find.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/find/find.c b/find/find.c
index 93fbbcd..43e0537 100644
--- a/find/find.c
+++ b/find/find.c
@@ -1169,6 +1169,8 @@ process_path (char *pathname, char *name, bool leaf, char 
   int i;
   struct predicate *eval_tree;

+  memset (&stat_buf, 0, sizeof (stat_buf));
   eval_tree = get_eval_tree ();
   /* Assume it is a non-directory initially. */
   stat_buf.st_mode = 0;

reply via email to

[Prev in Thread] Current Thread [Next in Thread]