diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-05-29 11:25:58 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-05-29 11:25:58 +0200 |
commit | d873bd96953a6c8de8a9355e330400e0799db661 (patch) | |
tree | a90c8c90e9e6a495038fa1c4242b9855f7843ef8 | |
parent | 50062bdfc004c8e24e3344ffe6991894ee0e6d09 (diff) | |
download | UXP-d873bd96953a6c8de8a9355e330400e0799db661.tar UXP-d873bd96953a6c8de8a9355e330400e0799db661.tar.gz UXP-d873bd96953a6c8de8a9355e330400e0799db661.tar.lz UXP-d873bd96953a6c8de8a9355e330400e0799db661.tar.xz UXP-d873bd96953a6c8de8a9355e330400e0799db661.zip |
Make nsFind::Find actually use a string type as input.
Futureproofing follow-up to b89570e31cfb84449241e363a595540b8810c217
-rw-r--r-- | embedding/components/find/nsFind.cpp | 6 | ||||
-rw-r--r-- | embedding/components/find/nsIFind.idl | 2 | ||||
-rw-r--r-- | embedding/components/find/nsWebBrowserFind.cpp | 2 | ||||
-rw-r--r-- | embedding/test/test_nsFind.html | 14 | ||||
-rw-r--r-- | toolkit/components/typeaheadfind/nsTypeAheadFind.cpp | 2 |
5 files changed, 4 insertions, 22 deletions
diff --git a/embedding/components/find/nsFind.cpp b/embedding/components/find/nsFind.cpp index 6987c11d3..63304dafb 100644 --- a/embedding/components/find/nsFind.cpp +++ b/embedding/components/find/nsFind.cpp @@ -932,7 +932,7 @@ nsFind::ResetAll() // Take nodes out of the tree with NextNode, until null (NextNode will return 0 // at the end of our range). NS_IMETHODIMP -nsFind::Find(const char16_t* aPatText, nsIDOMRange* aSearchRange, +nsFind::Find(const nsAString& aPatText, nsIDOMRange* aSearchRange, nsIDOMRange* aStartPoint, nsIDOMRange* aEndPoint, nsIDOMRange** aRangeRet) { @@ -949,10 +949,6 @@ nsFind::Find(const char16_t* aPatText, nsIDOMRange* aSearchRange, NS_ENSURE_ARG_POINTER(aRangeRet); *aRangeRet = 0; - if (!aPatText) { - return NS_ERROR_NULL_POINTER; - } - ResetAll(); nsAutoString patAutoStr(aPatText); diff --git a/embedding/components/find/nsIFind.idl b/embedding/components/find/nsIFind.idl index 2c9b17703..ce02c9b7d 100644 --- a/embedding/components/find/nsIFind.idl +++ b/embedding/components/find/nsIFind.idl @@ -29,6 +29,6 @@ interface nsIFind : nsISupports * end (forward) or start (backward). * @retval A range spanning the match that was found (or null). */ - nsIDOMRange Find(in wstring aPatText, in nsIDOMRange aSearchRange, + nsIDOMRange Find(in AString aPatText, in nsIDOMRange aSearchRange, in nsIDOMRange aStartPoint, in nsIDOMRange aEndPoint); }; diff --git a/embedding/components/find/nsWebBrowserFind.cpp b/embedding/components/find/nsWebBrowserFind.cpp index af44ce59b..aadc66f8e 100644 --- a/embedding/components/find/nsWebBrowserFind.cpp +++ b/embedding/components/find/nsWebBrowserFind.cpp @@ -751,7 +751,7 @@ nsWebBrowserFind::SearchInFrame(nsPIDOMWindowOuter* aWindow, bool aWrapping, NS_ENSURE_SUCCESS(rv, rv); - rv = find->Find(mSearchString.get(), searchRange, startPt, endPt, + rv = find->Find(mSearchString, searchRange, startPt, endPt, getter_AddRefs(foundRange)); if (NS_SUCCEEDED(rv) && foundRange) { diff --git a/embedding/test/test_nsFind.html b/embedding/test/test_nsFind.html index 5f5a4687a..f180cda20 100644 --- a/embedding/test/test_nsFind.html +++ b/embedding/test/test_nsFind.html @@ -33,20 +33,6 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=450048 var startPt = searchRange; var endPt = searchRange; - // Check |null| detection on |aPatText| parameter. - try { - rf.Find(null, searchRange, startPt, endPt); - - ok(false, "Missing NS_ERROR_NULL_POINTER exception"); - } catch (e) { - e = SpecialPowers.wrap(e); - if (e.result == SpecialPowers.Cr.NS_ERROR_NULL_POINTER) { - ok(true, null); - } else { - throw e; - } - } - // Check |null| detection on |aSearchRange| parameter. try { rf.Find("", null, startPt, endPt); diff --git a/toolkit/components/typeaheadfind/nsTypeAheadFind.cpp b/toolkit/components/typeaheadfind/nsTypeAheadFind.cpp index 674681581..53b1ef66d 100644 --- a/toolkit/components/typeaheadfind/nsTypeAheadFind.cpp +++ b/toolkit/components/typeaheadfind/nsTypeAheadFind.cpp @@ -420,7 +420,7 @@ nsTypeAheadFind::FindItNow(nsIPresShell *aPresShell, bool aIsLinksOnly, while (true) { // ----- Outer while loop: go through all docs ----- while (true) { // === Inner while loop: go through a single doc === - mFind->Find(mTypeAheadBuffer.get(), mSearchRange, mStartPointRange, + mFind->Find(mTypeAheadBuffer, mSearchRange, mStartPointRange, mEndPointRange, getter_AddRefs(returnRange)); if (!returnRange) |