Browse Source

Make nsFind::Find actually use a string type as input.

Futureproofing follow-up to b89570e31cfb84449241e363a595540b8810c217
pull/7/head
wolfbeast 3 years ago committed by Roy Tam
parent
commit
d7fad8539b
  1. 6
      embedding/components/find/nsFind.cpp
  2. 2
      embedding/components/find/nsIFind.idl
  3. 2
      embedding/components/find/nsWebBrowserFind.cpp
  4. 14
      embedding/test/test_nsFind.html
  5. 2
      toolkit/components/typeaheadfind/nsTypeAheadFind.cpp

6
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);

2
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);
};

2
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) {

14
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);

2
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)

Loading…
Cancel
Save