git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alex Riesen <raa.lkml@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: "Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
	"Dirk Süsserott" <newsletter@dirk.my1.cc>,
	"Git Mailing List" <git@vger.kernel.org>
Subject: Re: [PATCH] Make the exit code of add_file_to_index actually useful
Date: Mon, 12 May 2008 22:54:14 +0200	[thread overview]
Message-ID: <20080512205414.GH3128@steel.home> (raw)
In-Reply-To: <7vzlqvxt1p.fsf@gitster.siamese.dyndns.org>

Junio C Hamano, Mon, May 12, 2008 20:42:58 +0200:
> >
> > I corrected the series to use die() again and rebased it off current
> > master (65ea3b8c). So it is more compatible with libification (does
> > not hinder it more than previos code) and keep the exit code.
> 
> But you did not answer my question in the part you did not quote, did you?

I believe I did:

Date:	Sun, 2 Mar 2008 22:42:41 +0100
Subject: Re: [PATCH] Make the exit code of add_file_to_index actually useful
Message-ID: <20080302214241.GB13954@steel.home>

Junio C Hamano, Sun, Mar 02, 2008 17:59:13 +0100:
> Why is this even needed to begin with?  I am aware of Dirk's original
> issue discussed elsewhere, but we try fairly hard to be A-O-N when we can
> afford to, and this option deliberately breaks it.  What is the real
> reason why such an unreadable (either for privilege or for I/O error)
> file should not live in .gitignore?

Another program keeps the file open. There is an exclusive mode for
opening files, which locks the files for everyone. I believe it is
even default mode, unless selected otherwise.

> Now when somebody either forgets to check the return value from this
> function, or deliberately ignores it, the resulting index will not match
> what the code is told to update it with.

I think I got them all in the current code:

    $git grep -E 'add_(file_)?to_(index|cache)'
    Documentation/technical/api-in-core-index.txt:* add_file_to_index()
    builtin-add.c:                  if (add_file_to_cache(path, data->flags
    builtin-add.c:          if (add_file_to_cache(dir.entries[i]->name, ver
    builtin-commit.c:                       if (add_to_cache(p->path, &st,
    builtin-mv.c:                   if (add_file_to_cache(path, verbose))
    cache.h:#define add_to_cache(path, st, verbose) add_to_index(&the_index
    cache.h:#define add_file_to_cache(path, verbose) add_file_to_index(&the
    cache.h:extern int add_to_index(struct index_state *, const char *path,
    cache.h:extern int add_file_to_index(struct index_state *, const char *
    read-cache.c:int add_to_index(struct index_state *istate, const char *p
    read-cache.c:int add_file_to_index(struct index_state *istate, const ch
    read-cache.c:   return add_to_index(istate, path, &st, verbose);

Regarding the return value: isn't it very often a bug to ignore them?
Or do you mean to say I should have renamed the function so that old
interface cannot be used accidentally by someone how just knows it
never returns in case of an error?

  reply	other threads:[~2008-05-12 20:55 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-01 13:46 How to "git add ." when some files are not accessible (permission denied)? Dirk Süsserott
2008-03-02  1:19 ` Jeff King
2008-03-03 19:17   ` Dirk Süsserott
2008-03-03 20:06     ` Junio C Hamano
2008-03-03 20:32       ` Dirk Süsserott
2008-03-02 15:41 ` Alex Riesen
2008-03-02 15:42   ` [PATCH] Make the exit code of add_file_to_index actually useful Alex Riesen
2008-03-02 15:43     ` [PATCH] Extend interface of add_files_to_cache to allow ignore indexing errors Alex Riesen
2008-03-02 15:44       ` [PATCH] Add --ignore-errors to git-add to allow it to skip files with read errors Alex Riesen
2008-03-02 15:44         ` [PATCH] Add a test for git-add --ignore-errors Alex Riesen
2008-03-02 15:57     ` [PATCH] Make the exit code of add_file_to_index actually useful Johannes Schindelin
2008-03-02 16:59       ` Junio C Hamano
2008-03-02 21:42         ` Alex Riesen
2008-03-02 22:04           ` Joachim B Haga
2008-03-03  6:57             ` Alex Riesen
2008-05-12 17:56         ` Alex Riesen
2008-05-12 17:57           ` Alex Riesen
2008-05-12 17:58             ` [PATCH] Extend interface of add_files_to_cache to allow ignore indexing errors Alex Riesen
2008-05-12 17:58               ` [PATCH] Add --ignore-errors to git-add to allow it to skip files with read errors Alex Riesen
2008-05-12 17:58                 ` [PATCH] Add a test for git-add --ignore-errors Alex Riesen
2008-05-12 17:59                   ` [PATCH] Add a config option to ignore errors for git-add Alex Riesen
2008-05-13  3:48                   ` [PATCH] Add a test for git-add --ignore-errors Junio C Hamano
2008-05-13  6:04                     ` Alex Riesen
2008-05-13  6:05                     ` Junio C Hamano
2008-05-13 22:28                       ` Alex Riesen
2008-05-12 18:42           ` [PATCH] Make the exit code of add_file_to_index actually useful Junio C Hamano
2008-05-12 20:54             ` Alex Riesen [this message]
2008-05-12 22:19               ` Junio C Hamano
2008-05-12 22:48                 ` Alex Riesen
2008-05-12 23:32                   ` Junio C Hamano
2008-05-13  6:00                     ` Alex Riesen
2008-03-03 18:01       ` Daniel Barkalow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080512205414.GH3128@steel.home \
    --to=raa.lkml@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=newsletter@dirk.my1.cc \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).