function installAddonFromInstall(install) {
  let cb = Async.makeSyncCallback();
  let listener = {onInstallEnded: cb};
  AddonManager.addInstallListener(listener);
  install.install();
  Async.waitForSyncCallback(cb);
  AddonManager.removeAddonListener(listener);

  do_check_neq(null, install.addon);
  do_check_neq(null, install.addon.syncGUID);

  return install.addon;
}
/**
 * Installs an add-on synchronously from an addonInstall
 *
 * @param  install addonInstall instance to install
 */
Installs an add-on synchronously from an addonInstall
@param  install addonInstall instance to install
Installs an add - on synchronously from an addonInstall @param install addonInstall instance to install
function installAddonFromInstall(install) {
  let cb = Async.makeSyncCallback();
  let listener = {onInstallEnded: cb};
  AddonManager.addInstallListener(listener);
  install.install();
  Async.waitForSyncCallback(cb);
  AddonManager.removeAddonListener(listener);
  do_check_neq(null, install.addon);
  do_check_neq(null, install.addon.syncGUID);
  return install.addon;
}
function installAddonFromInstall ( install ) { let cb = Async . makeSyncCallback ( ) ; let listener = { onInstallEnded : cb } ; AddonManager . addInstallListener ( listener ) ; install . install ( ) ; Async . waitForSyncCallback ( cb ) ; AddonManager . removeAddonListener ( listener ) ; do_check_neq ( null , install . addon ) ; do_check_neq ( null , install . addon . syncGUID ) ; return install . addon ; }
Installs an add-on synchronously from an addonInstall
 @param  install addonInstall instance to install
Installs an add - on synchronously from an addonInstall @param install addonInstall instance to install