From: Alex Riesen Date: Tue, 22 Jul 2008 16:46:04 GMT Subject: Re: [PATCH] Fix update-index --refresh for submodules if stat(2) returns st_size 0 Message-ID: <20080722164604.GA3766@blimp.local> In-Reply-To: <4885897C.8010401@viscovery.net> Johannes Sixt, Tue, Jul 22, 2008 09:17:16 +0200: > Alex Riesen schrieb: > > Can MSys folks please try it? I noticed it when the test > > t2103-update-index-ignore-missing.sh (the 5th case) started failing. > > I tested it. mingw.git does suffer from the problem, and this fixes it. > Yes, I did too (at work). > > + if ((changed & DATA_CHANGED) && (ce->ce_size != 0 || S_ISGITLINK(ce->ce_mode))) > > Does this mean that ce->ce_size is non-zero for gitlinks, at least on > Unix? It is non-zero for directories (which is what gitlinks are in working directories) on UNIX operating systems I met. > Is this value useful in anyway? Sometimes it is (the size a directory takes on storage) > I don't think so. Then it shouldn't be a random value that lstat() > happens to return. The problem is: it is not random. I even suspect that Windows is the ONLY system which has st_size 0 for directories.