diff options
author | tsepez <tsepez@chromium.org> | 2016-05-16 13:21:03 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-05-16 13:21:03 -0700 |
commit | cc4d6d85b58a7a1d9d7b798c63d3343f3dac06a9 (patch) | |
tree | fda580a573f97d15c9484c57ebf8fae66342ab83 /fpdfsdk/fsdk_annothandler.cpp | |
parent | e699c66433049396e438d983a1837b9d4a4cf766 (diff) | |
download | pdfium-cc4d6d85b58a7a1d9d7b798c63d3343f3dac06a9.tar.xz |
Remove { delete this; } anti-pattern from IXFA_WidgetIterator
Review-Url: https://codereview.chromium.org/1976123003
Diffstat (limited to 'fpdfsdk/fsdk_annothandler.cpp')
-rw-r--r-- | fpdfsdk/fsdk_annothandler.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/fpdfsdk/fsdk_annothandler.cpp b/fpdfsdk/fsdk_annothandler.cpp index 73701cfb4c..db2d20b2bf 100644 --- a/fpdfsdk/fsdk_annothandler.cpp +++ b/fpdfsdk/fsdk_annothandler.cpp @@ -376,22 +376,20 @@ CPDFSDK_Annot* CPDFSDK_AnnotHandlerMgr::GetNextAnnot(CPDFSDK_Annot* pSDKAnnot, return pNext; } // for xfa annots - IXFA_WidgetIterator* pWidgetIterator = + std::unique_ptr<IXFA_WidgetIterator> pWidgetIterator( pPage->GetXFAPageView()->CreateWidgetIterator( XFA_TRAVERSEWAY_Tranvalse, XFA_WIDGETFILTER_Visible | XFA_WIDGETFILTER_Viewable | - XFA_WIDGETFILTER_Field); - if (pWidgetIterator == NULL) - return NULL; + XFA_WIDGETFILTER_Field)); + if (!pWidgetIterator) + return nullptr; if (pWidgetIterator->GetCurrentWidget() != pSDKAnnot->GetXFAWidget()) pWidgetIterator->SetCurrentWidget(pSDKAnnot->GetXFAWidget()); - CXFA_FFWidget* hNextFocus = NULL; - hNextFocus = + CXFA_FFWidget* hNextFocus = bNext ? pWidgetIterator->MoveToNext() : pWidgetIterator->MoveToPrevious(); if (!hNextFocus && pSDKAnnot) hNextFocus = pWidgetIterator->MoveToFirst(); - pWidgetIterator->Release(); return pPageView->GetAnnotByXFAWidget(hNextFocus); #else // PDF_ENABLE_XFA CBA_AnnotIterator ai(pSDKAnnot->GetPageView(), "Widget", ""); |