question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Latest update breaks Canvas Website and Github Unless user clears _all_ settings

See original GitHub issue

Since the update I can no longer use the Canvas(Educational platform) website. https://vccs.instructure.com/

Description

After update if I do not disable the addon the site will no longer work. It worked until today when the extension autoupdated. Unless the user clears all settings the thing won’t work. So something’s going on here. I’ve included both the original and the modified settings at the bottom.

It prevents someone from using the site and since it’s no supposed to be blocking anything as the icon doesn’t change you can’t even white list the site.

Expected Behavior

It should just work. It worked before the last update.

Current Behavior

The site fails to load. And the following is written the browser console.

Error: WebExtension context not found!  ExtensionParent.jsm:778:13
Error: Attempt to postMessage on disconnected port  frame.js:121:5
Loading failed for the <script> with source “https://www.google-analytics.com/analytics.js”.  vccs.instructure.com:1
ReferenceError: $ is not defined

Possible Solution

I have no idea what I’m doing but maybe this information below might help you out more.

Extra information. If I tell canvas blocker to ask for permission and then block it, it works just fine. Also if I disable the “DOMRect API” it also works just fine. So I don’t know what’s going with this site. If I block access to it, or prompt and then block it works fine but if I try to just fake it, the site will fail with the message Error: Attempt to postMessage on disconnected port showing up. Which I think is from canvas blocker but who knows.

OK after some more digging this is the issue this section of code.

			notificationCounter[data.messageId].count += 1;
			if (!sentAPIs[data.api]){
				sentAPIs[data.api] = true;
				port.postMessage({"canvasBlocker-notify": data});
			}
		}
	}

It is doing something with the Canvas website. When I tell it to just fake out reading on the DomRect API it’ll give me that error and stop the site from loading but if I prompt or block the site it’ll work just fine. As in if I set the mode to “block” no error will pop up.

Steps to Reproduce (for bugs)

  1. Try to go to the site. See that it fails to load with the messsages above.
  2. Can’t get it work anymore without disabling the thing or setting the mode to prompt or block.
  3. Get frustrated and post a bug report here.

Context

I was trying to do my homework for my classes that are online.

Not needed itworked yesterday.

Your Environment

  • CanvasBlocker Version used:0.5.11
  • Firefox version incl. 32- or 64-bit:64bit
  • Operating System and version (desktop or mobile):Desktop
  • Installed addons:
Classic Add-ons Archive	2.0.1	true	ca-archive@Off.JustOff
Classic Theme Restorer	1.7.7.2	true	ClassicThemeRestorer@ArisT2Noia4dev
Decentraleyes	2.0.11	true	jid1-BoFifL9Vbdl2zQ@jetpack
DownThemAll!	3.0.8	true	{DDC359D1-844A-42a7-9AA1-88A850A938A8}
DownThemAll! AntiContainer	1.5	true	anticontainer@downthemall.net
Link Cleaner	1.5	true	{6d85dea2-0fb4-4de3-9f8c-264bce9a2296}
No Transition	1.1.8	true	{8b5fde66-c64d-4a33-99f1-c7c94138d67e}
NoScript	5.1.8.4	true	{73a6fe31-595d-460b-a920-fcc0f8843232}
Tab Groups	2.1.4	true	tabgroups@quicksaver
uBlock Origin	1.20.0	true	uBlock0@raymondhill.net

Your Settings

{
	"logLevel": 1,
	"urlSettings": [],
	"hiddenSettings": {},
	"expandStatus": {},
	"displayHiddenSettings": false,
	"whiteList": "",
	"sessionWhiteList": "",
	"blackList": "",
	"blockMode": "fake",
	"protectedCanvasPart": "readout",
	"minFakeSize": 1,
	"maxFakeSize": 0,
	"rng": "nonPersistent",
	"protectedAPIFeatures": {},
	"useCanvasCache": true,
	"ignoreFrequentColors": 0,
	"minColors": 0,
	"fakeAlphaChannel": false,
	"persistentRndStorage": "",
	"persistentIncognitoRndStorage": "",
	"storePersistentRnd": false,
	"persistentRndClearIntervalValue": 0,
	"persistentRndClearIntervalUnit": "days",
	"lastPersistentRndClearing": 1561344734600,
	"sharePersistentRndBetweenDomains": false,
	"askOnlyOnce": "individual",
	"askDenyMode": "block",
	"showCanvasWhileAsking": true,
	"showNotifications": true,
	"highlightPageAction": "color",
	"highlightBrowserAction": "color",
	"displayBadge": true,
	"storeNotificationData": false,
	"storeImageForInspection": false,
	"ignoreList": "",
	"ignoredAPIs": {},
	"showCallingFile": false,
	"showCompleteCallingStack": false,
	"enableStackList": false,
	"stackList": "",
	"protectAudio": true,
	"audioFakeRate": "100",
	"audioNoiseLevel": "minimal",
	"useAudioCache": true,
	"audioUseFixedIndices": true,
	"audioFixedIndices": "15",
	"historyLengthThreshold": 2,
	"protectWindow": false,
	"protectDOMRect": true,
	"domRectIntegerFactor": 4,
	"blockDataURLs": true,
	"protectNavigator": false,
	"navigatorDetails": {},
	"displayAdvancedSettings": false,
	"displayDescriptions": false,
	"theme": "dark",
	"dontShowOptionsOnUpdate": false,
	"isStillDefault": false,
	"storageVersion": 0.5
}

here’s the reset settings after changing theme to dark.

{
	"logLevel": 1,
	"urlSettings": [],
	"hiddenSettings": {},
	"expandStatus": {},
	"displayHiddenSettings": false,
	"whiteList": "",
	"sessionWhiteList": "",
	"blackList": "",
	"blockMode": "fake",
	"protectedCanvasPart": "readout",
	"minFakeSize": 1,
	"maxFakeSize": 0,
	"rng": "nonPersistent",
	"protectedAPIFeatures": {},
	"useCanvasCache": true,
	"ignoreFrequentColors": 0,
	"minColors": 0,
	"fakeAlphaChannel": false,
	"persistentRndStorage": "",
	"persistentIncognitoRndStorage": "",
	"storePersistentRnd": false,
	"persistentRndClearIntervalValue": 0,
	"persistentRndClearIntervalUnit": "days",
	"lastPersistentRndClearing": 0,
	"sharePersistentRndBetweenDomains": false,
	"askOnlyOnce": "individual",
	"askDenyMode": "block",
	"showCanvasWhileAsking": true,
	"showNotifications": true,
	"highlightPageAction": "none",
	"highlightBrowserAction": "color",
	"displayBadge": true,
	"storeNotificationData": false,
	"storeImageForInspection": false,
	"ignoreList": "",
	"ignoredAPIs": {},
	"showCallingFile": false,
	"showCompleteCallingStack": false,
	"enableStackList": false,
	"stackList": "",
	"protectAudio": true,
	"audioFakeRate": "100",
	"audioNoiseLevel": "minimal",
	"useAudioCache": true,
	"audioUseFixedIndices": true,
	"audioFixedIndices": "11",
	"historyLengthThreshold": 2,
	"protectWindow": false,
	"protectDOMRect": true,
	"domRectIntegerFactor": 4,
	"blockDataURLs": true,
	"protectNavigator": false,
	"navigatorDetails": {},
	"displayAdvancedSettings": false,
	"displayDescriptions": false,
	"theme": "dark",
	"dontShowOptionsOnUpdate": false,
	"isStillDefault": false,
	"storageVersion": 0.5
}

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:1
  • Comments:18 (10 by maintainers)

github_iconTop GitHub Comments

1reaction
kkapsnercommented, Jun 24, 2019

When the OP also uses Waterfox one issue is enough 😉 Let’s see how I can solve this.

Regarding the support drop of Firefox < 57: I want to support Waterfox as much as I can. Not sure if it’s possible…

Read more comments on GitHub >

github_iconTop Results From Across the Web

CanvasBlocker/releaseNotes.txt at master · kkapsner ... - GitHub
- due to API blocking some web pages may break. Use 0.5.2b instead. changes: - if settings are not loaded fast enough the...
Read more >
August 2022 - Visual Studio Code
Learn what is new in the Visual Studio Code August 2022 Release (1.71)
Read more >
Safari Technology Preview Release Notes - Apple Developer
Note: Shared Tab Groups and syncing for Tab Groups, Website Settings, and Web ... If you already have Safari Technology Preview installed, you...
Read more >
Chrome Enterprise and Education release notes
If the user clicks on it, the page info bubble is shown, which is a surface that among others, allows users to manage...
Read more >
Use Git version control to edit canvas apps (experimental)
Learn how to connect to a Git repository and allow multiple users to ... described in Enable Git version control to know if...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found