Open Bug 1098304 Opened 10 years ago Updated 2 years ago

Unable to load pages if 'Restore ony the ones you want' option is enabled in about:welcomeback

Categories

(Firefox :: Migration, defect)

36 Branch
defect

Tracking

()

Tracking Status
e10s - ---

People

(Reporter: bmaris, Unassigned)

References

Details

STR:
1. Open latest Nightly
2. Open about:welcomeback
3. Click 'Restore only the ones you want'
4. Go to urlbar and write a link. eg: https://www.mozilla.org/en-US/
5. Hit Enter.

Expected results: The page loads.

Actual results: Page does not load if the option is selected.

Notes:
1. This happens across all platforms.
tracking-e10s: --- → ?
Component: General → Migration
Flags: needinfo?(mconley)
I'm unable to reproduce this with a fresh build. Do you still see this in the latest Nightly, Bogdan?
Flags: needinfo?(mconley) → needinfo?(bogdan.maris)
I can still reproduce using latest Nightly on Windows 8.1, Ubuntu 14.04 64 and Mac OS X 10.9.5.
Flags: needinfo?(bogdan.maris)
Oh weird - now I can reproduce it too. I must have been doing it wrong yesterday.

This is in the Browser Console:

SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data FormData.jsm:225:27

Which maps to this line in FormData.jsm:

    // Store the frame's current URL with its form data so that we can compare
    // it when restoring data to not inject form data into the wrong document.
    ret.url = getDocumentURI(doc);

    // We want to avoid saving data for about:sessionrestore as a string.
    // Since it's stored in the form as stringified JSON, stringifying further
    // causes an explosion of escape characters. cf. bug 467409
    if (isRestorationPage(ret.url)) {
      ret.id.sessionData = JSON.parse(ret.id.sessionData);  // <-- This line
    }

    return ret;

However, I also see that in non-e10s, so it might be a red herring.

Regardless, this is worth investigating.
Flags: firefox-backlog+
I am unable to reproduce this on today's nightly on Windows or Mac. Following the steps in comment #0 the pages load fine, in both non-e10s and e10s mode.

Bogdan, do you still see this?
Flags: needinfo?(bogdan.maris)
(In reply to juan becerra [:juanb] from comment #4)
> I am unable to reproduce this on today's nightly on Windows or Mac.
> Following the steps in comment #0 the pages load fine, in both non-e10s and
> e10s mode.
> 
> Bogdan, do you still see this?

I am not able to reproduce this issue anymore using latest Nightly (e10s and non-e10s) on Windows 7 64-bit, Ubuntu 14.04 64-bit and Mac OS X 10.9.5 but I`m still getting the same output in the Browser console as Mike in comment 3. 

Is this something we should worry about?
Flags: needinfo?(bogdan.maris) → needinfo?(mconley)
Not completely sure, to be honest. Clearly, we're having a hard time parsing a JSON string - it's likely not valid JSON.

smacleod - does this sound familiar or worrying?
Flags: needinfo?(mconley) → needinfo?(smacleod)
Doesn't seem familiar to me - I'm going to defer to Tim though, he might have a better idea of what's happening.
Flags: needinfo?(smacleod) → needinfo?(ttaubert)
about:welcomeback is page that doesn't expect to be called like that and would need some fixing:

JavaScript error: chrome://browser/content/aboutSessionRestore.js, line 37: TypeError: document.getElementById(...) is null
JavaScript error: chrome://browser/content/aboutSessionRestore.js, line 68: TypeError: gStateObject is undefined

SessionStore detects a page that usually holds sessionstore data and doesn't expect it to be empty, or invalid JSON. We should probably fix that as well.

The page loads succeeds here. If it doesn't then I would be really surprised if that's connected to the errors in the console.
Flags: needinfo?(ttaubert)
comment 3 says this is reproducible without e10s
Summary: [e10s] Unable to load pages if 'Restore ony the ones you want' option is enabled in about:welcomeback → Unable to load pages if 'Restore ony the ones you want' option is enabled in about:welcomeback
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.