Age | Commit message (Collapse) | Author |
|
This makes it clear that fxjse/ is a standalone component and should not be
entangled with other xfa/ components.
BUG=pdfium:506
Review-Url: https://codereview.chromium.org/2056663004
|
|
Fix is speculative because I can't repro locally, but I know the
current code is wrong.
I fixed this intially in https://codereview.chromium.org/2015143005/
I then broke it again in https://codereview.chromium.org/2019333006/
There is another spot where we are still casting through void*, and
the CXFA_Node*'s alignment is getting messed up when it fails to adjust
for it's vtable. Using CFXJSE_HostObject consistently avoids the issue.
Adding a virtual dtor to CFXJSE_HostObject might skirt the issue, but
I want to be able to wrap simple objects without that penalty if
desired.
BUG=616339
Review-Url: https://codereview.chromium.org/2055473004
|
|
This Cl cleans up a bunch of the FXJSE_* methods and moves others into the
classes where they most make sense.
Review-Url: https://codereview.chromium.org/2045883004
|
|
This CL removes the FXJSE_Value_Set*, FXJSE_Value_To*, FXJSE_Value_Get* and
FXJSE_Value_Delete* methods.
Review-Url: https://codereview.chromium.org/2043153002
|
|
This Cl removes the global FXJSE_Value_ToObject method and adds individual
methods on CXFA_Value to do the needed conversions.
Review-Url: https://codereview.chromium.org/2026993003
|
|
Also, don't invent an enum that has one possible value that is
always set.
Review-Url: https://codereview.chromium.org/2028343002
|
|
Fix the asymmetry between creating only some isolates and
releasing all of them, even the shared ones, by being more
careful not to trash those we didn't create.
Review-Url: https://codereview.chromium.org/2025193002
|
|
This will avoid a re-occurrence of BUG 613607 should someone
again optimize away CXFA_Object's virtual dtor.
Review-Url: https://codereview.chromium.org/2019333006
|
|
In most cases, the destroy calls were removed and the object wrapped in a
unique_ptr.
Review-Url: https://codereview.chromium.org/2014323003
|
|
This is just a crock to get things working until we fix the
underlying issue.
When there's single-inheritance, it may often work in practice
to C-style (reinterpret) cast a Derived* ptr to void* and then
back to a Base* ptr. One place where this blows up is if
Derived has virtual functions but Base does not, in which case
the world will be offset by the size of a vtable ptr.
Because of the use of void* types in FXJSE, the above was happening
when setting a CXFA_ThisProxy (Derived, virtual) to be a global
object (void*). This would then be cast back to a CFXA_Object
(Base, non-virtual) and chaos is ensured.
Not sure how far back this goes.
Along the way, pick up some tidying which was necessary for
simplicity while tracking this down.
BUG=613607
Review-Url: https://codereview.chromium.org/2015143005
|
|
Review-Url: https://codereview.chromium.org/2010183002
|
|
BUG=
Review-Url: https://codereview.chromium.org/2010013003
|
|
This CL replaces FXJSE_HOBJECT and FXJSE_HVALUE with the concrete CFXJSE_Value*
type. All variables are renamed to match.
Review-Url: https://codereview.chromium.org/2012253002
|
|
This CL removes FXJSE_HCLASS and replaces with CFXJSE_Class*. All variables have
been updated to the new type.
Review-Url: https://codereview.chromium.org/2014213002
|
|
This Cl removes FXJSE_HCONTEXT and replaces it with the concrete CFXJSE_Context.
All varibles have been updated as well to match the new type.
Review-Url: https://codereview.chromium.org/2013963005
|
|
https://codereview.chromium.org/2009413002/ )
Reason for revert:
Suspect that the lack of this parameter being
passed accurately to GetObject is leading to
https://bugs.chromium.org/p/chromium/issues/detail?id=613607, and that the right
fix will be to pass it.
Original issue's description:
> Remove parameters which are always null
>
> These parameters are never set, remove them and their supporting code.
>
> Committed: https://pdfium.googlesource.com/pdfium/+/818e1900a3811e1bde1e594e4966db612f845966
TBR=tsepez@chromium.org,thestig@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/2014863002
|
|
These parameters are never set, remove them and their supporting code.
Review-Url: https://codereview.chromium.org/2009413002
|
|
This CL renames all of the instances of FXJSE_HRUNTIME to be v8::Isolate* and
updates the various varible names to match the new type.
Review-Url: https://codereview.chromium.org/2010833002
|
|
This CL removes a series of unused XFA methods.
Review URL: https://codereview.chromium.org/1899103002
|
|
FXJSE_DOUBLE was just defined as double. Replace with actual type to make
things clearer.
BUG=pdfium:81
Review URL: https://codereview.chromium.org/1842013003
|
|
Some headers were missed in the previous CL.
Review URL: https://codereview.chromium.org/1835703002
|
|
This CL moves the fxcrt code into the core/fxcrt directory. The only exception
was fx_bidi.h which was moved into core/fxcrt as it is not used outside of
core/.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1825953002 .
|
|
This CL moves the fxjse.h header and splits the cfxjse_arguments.h into its
own file.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1807623002 .
|