やりたいこと

WebExtensionsのchrome.tab.createに独自プロトコルのURLを渡してタブを作成した後、OSが独自プロトコルに対応したアプリを起動する。

その後、不必要なタブを削除したい。

問題

chrome.tab.create の第二引数に渡したコールバックメソッドが呼び出されない。

サンプルコード

/** background.js **/

function OpenNiconicoProtocol(niocnicoUrl = "niconico://sm9")
{
    chrome.tabs.create({url: niocnicoUrl, active:false}, OnTabCreated);
}

function OnTabCreated(tabInfo)
{
    console.log("tab id " + tabInfo.id);
    chrome.tabs.remove(tabInfo.id, () => 
    {
        if (chrome.runtime.lastError) {
            console.log("failed: " + chrome.runtime.lastError);
        } else {
            console.log("removed tab");
        }
    });

}

独自プロトコルのURLではtabs.createのコールバックを受けられないのでしょうか?

manifest.jsonを含めたソースコード
https://gist.github.com/tor4kichi/5ea925832be5887a873ac8e7c8394ba5

テスト環境
Windows 10 AU適用済み
Firefox Developer Edition 51.0a2 (2016-10-27) (32-bit)