From 3d8131535e6b127c7ededdbd2e76662688997272 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Thu, 21 Jun 2018 17:28:24 +0000 Subject: Pass output parameters as pointers in ijs_event_context It is hard to tell if there is some unsavory stuff going on with references otherwise. Avoids some const_casts in the process. Add some UnownedPtrs along the way to check caller's storage duration. Change-Id: Ic8d85802083f0b27e07993ea25f8f1c15fca1712 Reviewed-on: https://pdfium-review.googlesource.com/35750 Reviewed-by: dsinclair Commit-Queue: Tom Sepez --- fpdfsdk/cpdfsdk_actionhandler.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'fpdfsdk/cpdfsdk_actionhandler.cpp') diff --git a/fpdfsdk/cpdfsdk_actionhandler.cpp b/fpdfsdk/cpdfsdk_actionhandler.cpp index 5b72082104..64d82b93ba 100644 --- a/fpdfsdk/cpdfsdk_actionhandler.cpp +++ b/fpdfsdk/cpdfsdk_actionhandler.cpp @@ -422,22 +422,24 @@ void CPDFSDK_ActionHandler::RunFieldJavaScript( break; case CPDF_AAction::GetFocus: context->OnField_Focus(data->bModifier, data->bShift, pFormField, - data->sValue); + &data->sValue); break; case CPDF_AAction::LoseFocus: context->OnField_Blur(data->bModifier, data->bShift, pFormField, - data->sValue); + &data->sValue); break; case CPDF_AAction::KeyStroke: context->OnField_Keystroke( - data->sChange, data->sChangeEx, data->bKeyDown, data->bModifier, - data->nSelEnd, data->nSelStart, data->bShift, pFormField, - data->sValue, data->bWillCommit, data->bFieldFull, data->bRC); + &data->sChange, data->sChangeEx, data->bKeyDown, + data->bModifier, &data->nSelEnd, &data->nSelStart, data->bShift, + pFormField, &data->sValue, data->bWillCommit, data->bFieldFull, + &data->bRC); break; case CPDF_AAction::Validate: - context->OnField_Validate( - data->sChange, data->sChangeEx, data->bKeyDown, data->bModifier, - data->bShift, pFormField, data->sValue, data->bRC); + context->OnField_Validate(&data->sChange, data->sChangeEx, + data->bKeyDown, data->bModifier, + data->bShift, pFormField, &data->sValue, + &data->bRC); break; default: NOTREACHED(); -- cgit v1.2.3