author Doug Thayer <dothayer@mozilla.com>
Fri, 01 Mar 2019 18:29:09 +0000
changeset 520116 8b3fe0426ffc1b3a2ad044ef6cdde6c4f736f8e2
parent 494867 31941d904a7c3df53ed5b4c9ecdc40025d865dfb
child 523591 8962b8d9b7a673288218ed9087102032d7cf015b
permissions -rw-r--r--
Bug 1442694 - Fix failures due to removing selected tab r=Gijs This adds test which reproduce the failure as well as the fix. Essentially, if we hit the edited case in SessionStore with `tab` equal to `tabbrowser.tabs[t]`, we remove the tab and then try to pin it, which obviously blows up. Note: the additional method in SessionStore.jsm was largely to get around complexity requirements inside restoreWindow. Cleaner solutions welcome. Differential Revision: https://phabricator.services.mozilla.com/D21383

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

/* NOTE: this interface is only implemented in debug builds */

[scriptable, uuid(ca7b0bc7-c67c-4b79-8270-ed7ba002af08)]
interface nsIGfxInfoDebug : nsISupports
  void spoofVendorID(in AString aVendorID);
  void spoofDeviceID(in AString aDeviceID);
  void spoofDriverVersion(in AString aDriverVersion);

  void spoofOSVersion(in unsigned long aVersion);