"ASSERTION: Can only call this on frames that have been reflowed" after enabling accessibility

RESOLVED FIXED in mozilla10

Status

()

Core
Disability Access APIs
RESOLVED FIXED
7 years ago
6 years ago

People

(Reporter: Jesse Ruderman, Unassigned)

Tracking

(Blocks: 1 bug, {assertion, testcase})

Trunk
mozilla10
assertion, testcase
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Reporter)

Description

7 years ago
Created attachment 505719 [details]
testcase

This is one of the few accessibility-related assertions I'm hitting now that bug 498015 is fixed :)

1. Start a fresh instance of Firefox (so accessibility is disabled).
2. Load the testcase.
3. Enable accessibility, e.g. by pasting the following into the js console:

Components
  .classes["@mozilla.org/accessibilityService;1"]
  .getService(Components.interfaces.nsIAccessibleRetrieval);

4. Click the button in the testcase.

Result:

###!!! ASSERTION: Can only call this on frames that have been reflowed: '!(GetStateBits() & NS_FRAME_FIRST_REFLOW)', file layout/generic/nsTextFrameThebes.cpp, line 2218
(Reporter)

Comment 1

7 years ago
Created attachment 505720 [details]
stack trace
(In reply to comment #0)
> Created attachment 505719 [details]
> testcase
> 
> This is one of the few accessibility-related assertions I'm hitting now that
> bug 498015 is fixed :)
> 

Awesome.

Note I think this will be fixed alongside bug 613058 and bug 612098 (both soft blockers).

Once we get to zero assertions we'll strive to keep it there.

Updated

7 years ago
Depends on: 626660
OS: Linux → All
Hardware: x86_64 → All

Comment 3

6 years ago
still can see the assertion browsing the web:

>	xul.dll!nsTextFrame::GetTrimmedOffsets(const nsTextFragment * aFrag, bool aTrimAfter)  Line 2315 + 0x37 bytes	C++
 	xul.dll!nsTextFrame::GetRenderedText(nsAString_internal * aAppendToString, gfxSkipChars * aSkipChars, gfxSkipCharsIterator * aSkipIter, unsigned int aSkippedStartOffset, unsigned int aSkippedMaxLength)  Line 7605	C++
 	xul.dll!nsAccessibilityService::GetOrCreateAccessible(nsINode * aNode, nsIPresShell * aPresShell, nsIWeakReference * aWeakShell, bool * aIsSubtreeHidden)  Line 996	C++
 	xul.dll!nsAccTreeWalker::NextChildInternal(bool aNoWalkUp)  Line 120 + 0x55 bytes	C++
 	xul.dll!nsAccTreeWalker::NextChild()  Line 70	C++
 	xul.dll!nsAccessible::CacheChildren()  Line 2985 + 0x8 bytes	C++
 	xul.dll!nsAccessible::EnsureChildren()  Line 3027	C++
 	xul.dll!nsDocAccessible::CacheChildrenInSubtree(nsAccessible * aRoot)  Line 1954	C++
 	xul.dll!nsDocAccessible::CacheChildrenInSubtree(nsAccessible * aRoot)  Line 1961	C++
 	xul.dll!nsDocAccessible::CacheChildrenInSubtree(nsAccessible * aRoot)  Line 1961	C++
 	xul.dll!nsDocAccessible::CacheChildrenInSubtree(nsAccessible * aRoot)  Line 1961	C++
 	xul.dll!nsDocAccessible::CacheChildrenInSubtree(nsAccessible * aRoot)  Line 1961	C++
 	xul.dll!nsDocAccessible::DoInitialUpdate()  Line 1520	C++
 	xul.dll!nsDocAccessibleWrap::DoInitialUpdate()  Line 277	C++
 	xul.dll!NotificationController::WillRefresh(mozilla::TimeStamp aTime)  Line 230	C++
 	xul.dll!nsRefreshDriver::Notify(nsITimer * aTimer)  Line 359	C++
 	xul.dll!nsTimerImpl::Fire()  Line 428	C++

Comment 4

6 years ago
fixed by bug 680085
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla10
You need to log in before you can comment on or make changes to this bug.