Software Update:Processing Updates: Difference between revisions

m
mNo edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
== Overview ==
This document describes the process of applying updates once they have been downloaded.


During startup, Firefox will check for any updates that are ready to be applied and apply them.  The process consists of the following:
== Overview ==
 
At startup or shutdown, a routine called from XRE_main may perform the following steps to process pending updates:


* Check for the existance of an "updates" folder in the main application folder.
* Check for the existance of an "updates" folder in the main application folder.
Line 7: Line 9:
* Select the first folder in the list that is marked as ''pending''.
* Select the first folder in the list that is marked as ''pending''.
* Mark the selected folder as ''applying''.
* Mark the selected folder as ''applying''.
* Spawn the updater application to apply the selected update.
* Copy the updater application into the folder for the update being applied.
* At this point, firefox exits.
* Spawn the copy of the updater application to apply the selected update.
* The updater takes over, applies the update (recording information to a log file for debugging purposes), and marks the update as either ''succeeded'' or ''failed''.
* At this point, XRE_main exits. (NOTE: spawning the updater application may in fact mean that we call execv to load the updater image into the current process, but that is just an implementation detail.)
* The updater then launches firefox with a special command line flag to resume execution.
* The updater takes over, applies the update (recording information to a log file for debugging purposes -- named ''update.log''), and marks the update as either ''succeeded'' or ''failed''.
* Firefox performs any post-install work, including for example fixing up any Windows registry keys.
* The updater then (optionally) re-launches Firefox with a specified command line to resume execution.
* Firefox then performs any post-install work, including for example fixing up any Windows registry keys.


== Update Status ==
== Update Status ==
272

edits