So starting in QSUpdateController.m there is "installAppFromDiskImage"
which calls "replaceWithUpdateFromPath" and tracing that to
NSApplication_BLTRExtensions.m, it calls "moveToPath" which has some
additional debugging statements.  If I enable those I get the
following sequence in my console log:

6/10/11 8:36:53 AM      Quicksilver[16209]      Move Old 0
6/10/11 8:36:53 AM      /Applications/_Not_Standard/Quicksilver.app/
Contents/MacOS/Quicksilver[16209]       Cannot make directory /Applications/
_Not_Standard/Quicksilver.app: File exists
6/10/11 8:36:53 AM      Quicksilver[16209]      Copy New 0
6/10/11 8:36:53 AM      Quicksilver[16209]      Trash Old 0

Not knowing Objective C but assuming it is similar to other flavors of
C, my assumption would be that 0 is false and all 3 steps are
failing.  However, all but the last value is ignored (apart from
optional logging).  That one is used as the return value, but it is
then promptly ignored by the caller "replaceWithUpdateFromPath".

I'm not sure what model of error reporting is being used elsewhere in
QS (exceptions, retvals, etc.) or how to get it to ask for admin
permissions on the move/copy/trash functions, but those lines
(NSApplication_BLTRExtensions.m:95-100) seem to be the source of the
error I was encountering.

On Jun 9, 6:37 pm, Patrick Robertson <[email protected]>
wrote:
> There should be an error message saying something like "couldn't copy to
> /Applications..." if it didn't work. Interesting you didn't see this one.
>
> All the code related to updating is in QSUpdateController.m if you want to
> have a look
>
> On 10 June 2011 01:45, Kuperman <[email protected]> wrote:
>
>
>
>
>
> > On Jun 9, 4:42 am, Patrick Robertson <[email protected]>
> > wrote:
> > > > Could it be due to permissions problems?
>
> > > Probably. Do you get any messages in the console?
>
> > Of course.  The key one seems to be:
>
> > 6/9/11 11:36:52 AM      /Applications/_Not_Standard/Quicksilver.app/
> > Contents/MacOS/Quicksilver[30418]       Cannot make directory
> > /Applications/
> > _Not_Standard/Quicksilver.app: File exists
>
> > The rest are info about verifying the download (which works) and then
> > unmounting/ejecting and restarting.  I would have expected a different
> > errno message, but I've not browsed the source to see exactly what is
> > being done as part of the upgrade process.

Reply via email to