René's URL Explorer Experiment


Title: Calling history.replaceState in data URI of an iframe causes error in Firefox and Edge · Issue #16900 · angular/angular.js · GitHub

Open Graph Title: Calling history.replaceState in data URI of an iframe causes error in Firefox and Edge · Issue #16900 · angular/angular.js

X Title: Calling history.replaceState in data URI of an iframe causes error in Firefox and Edge · Issue #16900 · angular/angular.js

Description: I'm submitting a ... regression from 1.7.0 security issue issue caused by a new browser version other Current behavior: When I use AngularJS 1.7.8 + ng-table 3.0.1 in an iframe that was loaded via data URI, I get errors in Firefox (NS_ER...

Open Graph Description: I'm submitting a ... regression from 1.7.0 security issue issue caused by a new browser version other Current behavior: When I use AngularJS 1.7.8 + ng-table 3.0.1 in an iframe that was loaded via ...

X Description: I'm submitting a ... regression from 1.7.0 security issue issue caused by a new browser version other Current behavior: When I use AngularJS 1.7.8 + ng-table 3.0.1 in an iframe that was loaded ...

Opengraph URL: https://github.com/angular/angular.js/issues/16900

X: @github

direct link

Domain: patch-diff.githubusercontent.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Calling history.replaceState in data URI of an iframe causes error in Firefox and Edge","articleBody":"**I'm submitting a ...**\r\n- [ ] regression from 1.7.0\r\n- [ ] security issue\r\n- [ ] issue caused by a new browser version\r\n- [x] other\r\n\r\n**Current behavior:**\r\nWhen I use AngularJS 1.7.8 + ng-table 3.0.1 in an iframe that was loaded via data URI, I get errors in Firefox (NS_ERROR_FAILURE) and Edge (SecurityError). This is caused by calling history.replaceState in line 6630 of angular.js.\r\n\r\n**Expected / new behavior:**\r\nYou should only execute history.replaceState if the script is not loaded within a data URI:\r\n```\r\nif (!document.URL.startsWith('data:text/html')) {\r\n    history[replace ? 'replaceState' : 'pushState'](state, '', url);\r\n}\r\n```\r\n\r\n**Minimal reproduction of the problem with instructions:**\r\nYou can verify the different browser behavior with this demo:\r\nhttps://jsfiddle.net/2rtq8ezx/\r\n\r\n**AngularJS version:** 1.7.8\r\n**Browser:** Firefox 69, Edge 44\r\n\r\n**Anything else:**\r\nThis is an example of the error in Firefox:\r\n```\r\nfilename: \"https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js\"\r\nlineNumber: 6630\r\nname: \"NS_ERROR_FAILURE\"\r\nresult: 2147500037\r\nstack:\r\nBrowser/self.url@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:6630:56\r\n$LocationProvider/this.$get\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:15310:16\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5141:19\r\ncreateInjector/protoInstanceInjector\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:4930:37\r\ngetService@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5084:32\r\ninjectionArgs@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5109:58\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5133:18\r\ncreateInjector/protoInstanceInjector\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:4930:37\r\ngetService@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5084:32\r\ninjectionArgs@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5109:58\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5133:18\r\nregisterDirective/\u003c/\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:8778:43\r\nforEach@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:387:20\r\nregisterDirective/\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:8776:13\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5141:19\r\nenforcedReturnValue@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:4976:37\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5141:19\r\ncreateInjector/protoInstanceInjector\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:4930:37\r\ngetService@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5084:32\r\naddDirective@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10751:52\r\ncollectDirectives@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9980:15\r\ncompileNodes@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9751:22\r\ncompile@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9636:15\r\nNgTableController\u003c/NgTableController.prototype.compileDirectiveTemplates@https://unpkg.com/ng-table@3.0.1/bundles/ng-table.js:1441:22\r\ncompile/\u003c@https://unpkg.com/ng-table@3.0.1/bundles/ng-table.js:1123:28\r\nbind/\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1388:18\r\ninvokeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:11266:9\r\nnodeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10585:11\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9832:13\r\nnodeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10579:11\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9832:13\r\nnodeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10579:11\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9832:13\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9835:13\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9835:13\r\nnodeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10579:11\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9832:13\r\nnodeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:10579:11\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9832:13\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9835:13\r\ncompositeLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9835:13\r\npublicLinkFn@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:9697:30\r\nbootstrapApply/\u003c@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1965:27\r\n$eval@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:19393:28\r\n$apply@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:19492:25\r\nbootstrapApply@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1963:15\r\ninvoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:5141:19\r\ndoBootstrap@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1961:14\r\nbootstrap@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1981:12\r\nangularInit@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:1866:5\r\n@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.8/angular.js:36430:5\r\ni@https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:2:27449\r\nfireWith@https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:2:28213\r\nready@https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:2:30006\r\nK@https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js:2:30368\r\n```\r\n","author":{"url":"https://github.com/dikow","@type":"Person","name":"dikow"},"datePublished":"2019-09-05T09:32:50.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/16900/angular.js/issues/16900"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:1c83902e-d469-eee5-9914-eedf8842a7fa
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idA4D2:169C19:2846A7F:350B7D7:696DA226
html-safe-nonce25f55fac5235c519a70370820336afcaec2a949ae488b4cdbede4791380ddf50
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBNEQyOjE2OUMxOToyODQ2QTdGOjM1MEI3RDc6Njk2REEyMjYiLCJ2aXNpdG9yX2lkIjoiNDgzMDI0Mzg2MjA3Mzk0MjU2NiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac79fd2ab706925ca3542d4b7bde04c91b7a7cb23542bf3d5874e4ead1094ee4b1
hovercard-subject-tagissue:489639033
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/angular/angular.js/16900/issue_layout
twitter:imagehttps://opengraph.githubassets.com/6f46bcfa5f5b648aed20d575d9aa0a73d3e08a1970e21b3636b7e3962769568b/angular/angular.js/issues/16900
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/6f46bcfa5f5b648aed20d575d9aa0a73d3e08a1970e21b3636b7e3962769568b/angular/angular.js/issues/16900
og:image:altI'm submitting a ... regression from 1.7.0 security issue issue caused by a new browser version other Current behavior: When I use AngularJS 1.7.8 + ng-table 3.0.1 in an iframe that was loaded via ...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamedikow
hostnamegithub.com
expected-hostnamegithub.com
None4922b452d03cd8dbce479d866a11bc25b59ef6ee2da23aa9b0ddefa6bd4d0064
turbo-cache-controlno-preview
go-importgithub.com/angular/angular.js git https://github.com/angular/angular.js.git
octolytics-dimension-user_id139426
octolytics-dimension-user_loginangular
octolytics-dimension-repository_id460078
octolytics-dimension-repository_nwoangular/angular.js
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id460078
octolytics-dimension-repository_network_root_nwoangular/angular.js
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7e5ae23c70136152637ceee8d6faceb35596ec46
ui-targetcanary-2
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fangular%2Fangular.js%2Fissues%2F16900
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fangular%2Fangular.js%2Fissues%2F16900
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=angular%2Fangular.js
Reloadhttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900
Reloadhttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900
Reloadhttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900
angular https://patch-diff.githubusercontent.com/angular
angular.jshttps://patch-diff.githubusercontent.com/angular/angular.js
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Fangular%2Fangular.js
Fork 27.3k https://patch-diff.githubusercontent.com/login?return_to=%2Fangular%2Fangular.js
Star 59k https://patch-diff.githubusercontent.com/login?return_to=%2Fangular%2Fangular.js
Code https://patch-diff.githubusercontent.com/angular/angular.js
Issues 389 https://patch-diff.githubusercontent.com/angular/angular.js/issues
Pull requests 72 https://patch-diff.githubusercontent.com/angular/angular.js/pulls
Actions https://patch-diff.githubusercontent.com/angular/angular.js/actions
Projects 0 https://patch-diff.githubusercontent.com/angular/angular.js/projects
Wiki https://patch-diff.githubusercontent.com/angular/angular.js/wiki
Security Uh oh! There was an error while loading. Please reload this page. https://patch-diff.githubusercontent.com/angular/angular.js/security
Please reload this pagehttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900
Insights https://patch-diff.githubusercontent.com/angular/angular.js/pulse
Code https://patch-diff.githubusercontent.com/angular/angular.js
Issues https://patch-diff.githubusercontent.com/angular/angular.js/issues
Pull requests https://patch-diff.githubusercontent.com/angular/angular.js/pulls
Actions https://patch-diff.githubusercontent.com/angular/angular.js/actions
Projects https://patch-diff.githubusercontent.com/angular/angular.js/projects
Wiki https://patch-diff.githubusercontent.com/angular/angular.js/wiki
Security https://patch-diff.githubusercontent.com/angular/angular.js/security
Insights https://patch-diff.githubusercontent.com/angular/angular.js/pulse
Calling history.replaceState in data URI of an iframe causes error in Firefox and Edgehttps://patch-diff.githubusercontent.com/angular/angular.js/issues/16900#top
https://github.com/dikow
https://github.com/dikow
dikowhttps://github.com/dikow
on Sep 5, 2019https://github.com/angular/angular.js/issues/16900#issue-489639033
https://jsfiddle.net/2rtq8ezx/https://jsfiddle.net/2rtq8ezx/
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.