Closed
Bug 1256701
Opened 9 years ago
Closed 9 years ago
[Static Analysis][Dereference after null check] In function BrowserApp::enterEditingMode
Categories
(Firefox for Android Graveyard :: General, defect)
Firefox for Android Graveyard
General
Tracking
(firefox48 fixed)
RESOLVED
FIXED
Firefox 48
| Tracking | Status | |
|---|---|---|
| firefox48 | --- | fixed |
People
(Reporter: andi, Assigned: andi)
References
(Blocks 1 open bug)
Details
(Keywords: coverity, Whiteboard: CID 121390)
Attachments
(1 file)
The Static Analysis tool Coverity added that |selectedTab| because of this check:
>> if (selectedTab != null) {
>> mTargetTabForEditingMode = selectedTab.getId();
>> panelId = selectedTab.getMostRecentHomePanel();
>> } else {
>> mTargetTabForEditingMode = null;
>> panelId = null;
>> }
because of this null possibility a null pointer dereference can occur:
>> final boolean isUserSearchTerm = !TextUtils.isEmpty(selectedTab.getUserRequested());
>> if (isUserSearchTerm && SwitchBoard.isInExperiment(getContext(), Experiments.SEARCH_TERM)) {
>> showBrowserSearchAfterAnimation(animator);
>> } else {
>> showHomePagerWithAnimator(panelId, animator);
>> }
| Assignee | ||
Comment 1•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/40141/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/40141/
Attachment #8730763 -
Flags: review?(s.kaspari)
Updated•9 years ago
|
Attachment #8730763 -
Flags: review?(s.kaspari)
Comment 2•9 years ago
|
||
Comment on attachment 8730763 [details]
MozReview Request: Bug 1256701 - prevent null pointer dereference |selectedTab| in BrowserApp::enterEditingMode. r?sebastian
https://reviewboard.mozilla.org/r/40141/#review37367
::: mobile/android/base/java/org/mozilla/gecko/BrowserApp.java:2327
(Diff revision 1)
> + if (selectedTab != null ) {
> - final boolean isUserSearchTerm = !TextUtils.isEmpty(selectedTab.getUserRequested());
> + final boolean isUserSearchTerm = !TextUtils.isEmpty(selectedTab.getUserRequested());
> - if (isUserSearchTerm && SwitchBoard.isInExperiment(getContext(), Experiments.SEARCH_TERM)) {
> + if (isUserSearchTerm && SwitchBoard.isInExperiment(getContext(), Experiments.SEARCH_TERM)) {
> - showBrowserSearchAfterAnimation(animator);
> + showBrowserSearchAfterAnimation(animator);
> - } else {
> + } else {
> - showHomePagerWithAnimator(panelId, animator);
> + showHomePagerWithAnimator(panelId, animator);
> - }
> + }
> -
> + }
My assumption is that we want to show the homepager if there's no selected tab.
So I guess this should be:
final boolean isUserSearchTerm = selectedTab != null && !TextUtils.isEmpty(selectedTab.getUserRequested());
| Assignee | ||
Comment 3•9 years ago
|
||
Comment on attachment 8730763 [details]
MozReview Request: Bug 1256701 - prevent null pointer dereference |selectedTab| in BrowserApp::enterEditingMode. r?sebastian
Review request updated; see interdiff: https://reviewboard.mozilla.org/r/40141/diff/1-2/
Attachment #8730763 -
Flags: review?(s.kaspari)
Comment 4•9 years ago
|
||
Comment on attachment 8730763 [details]
MozReview Request: Bug 1256701 - prevent null pointer dereference |selectedTab| in BrowserApp::enterEditingMode. r?sebastian
https://reviewboard.mozilla.org/r/40141/#review37587
::: mobile/android/base/java/org/mozilla/gecko/BrowserApp.java:2326
(Diff revision 2)
> animator.setUseHardwareLayer(false);
>
> TransitionsTracker.track(animator);
>
> mBrowserToolbar.startEditing(url, animator);
> -
> +
NIT: Unnecessary white spaces.
Attachment #8730763 -
Flags: review?(s.kaspari) → review+
| Assignee | ||
Comment 5•9 years ago
|
||
Comment on attachment 8730763 [details]
MozReview Request: Bug 1256701 - prevent null pointer dereference |selectedTab| in BrowserApp::enterEditingMode. r?sebastian
Review request updated; see interdiff: https://reviewboard.mozilla.org/r/40141/diff/2-3/
Comment 7•9 years ago
|
||
| bugherder | ||
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox48:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 48
Updated•4 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•