Age | Commit message (Collapse) | Author |
|
Fixes a potential mismatch of |m_nComponents| between CPDF_DIBSource and
its CPDF_ColorSpace, from code attempting to recover from a failed decoder
initialisation in CPDF_DIBSource::CreateDecoder.
BUG=chromium:603518
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1892143003
|
|
Avoid string duplication when the caller already has one.
Review URL: https://codereview.chromium.org/1883273003
|
|
So far, we have only two Windows tests require to use platform specific
test results due to platform idiosyncracies. However, VS2015 has fixed
those issues.
So in general, We only need to use platform based results if checking
against the regular results failed.
Review URL: https://codereview.chromium.org/1892013003
|
|
These are exposed by making the ByteString from ByteStringC
ctor explicit, but we can clean them up independently.
Review URL: https://codereview.chromium.org/1884363002
|
|
- Avoid casting to void*
- Don't bother firing events that no one listens for
Review URL: https://codereview.chromium.org/1890563003
|
|
StringC's are all that's needed here. Also CMap_GetString()
and GetCode() are side-effect free, so remove calls where
the value is not used.
Review URL: https://codereview.chromium.org/1889003002
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1888843004
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1887003003
|
|
Avoid string duplication, since the first thing these routines
do is allocate a new string from the static string argument.
Review URL: https://codereview.chromium.org/1889983002
|
|
Avoids downgrade followed by duplication of existing strings.
Review URL: https://codereview.chromium.org/1891673003
|
|
There are perfectly fine operators for adding to an existing string
without first duplicating the arguments.
Review URL: https://codereview.chromium.org/1891953002
|
|
Do the same for CFX_WideTextBuf as well.
The name is confusing because these return CFX_ByteStringC,
not CFX_ByteString. The AsStringC naming gives parallelism with
the string types themselves, and may help to indicate that
the result is only good for the lifetime of the object being
operated upon.
Review URL: https://codereview.chromium.org/1886263003
|
|
These are immediately used to access a dictionary, so
the use of static CFX_ByteStringCs may force duplicate
allocations.
BUG=
Review URL: https://codereview.chromium.org/1888893002
|
|
This will help avoid duplicate allocation of CFX_ByteStrings
when the caller already has one. It may seem counter-intuitive
that requiring the caller to pass an allocated CFX_ByteString
rather than a static CFX_ByteStringC would improve the situation,
but due to the idiosyncrasies of std::map, the CPDF_Dictionary
methods must always do an allocation under the covers which
can't be avoided.
The changed callers in this CL are places where we would
previously demote to CFX_ByteStringC and then allocate a
a duplicate CFX_ByteString in the dictionary method.
Review URL: https://codereview.chromium.org/1889863002
|
|
Use the more standard name "clear()" instead.
Review URL: https://codereview.chromium.org/1888103002
|
|
The first PDF attempted by the Skia infra team
uncovered three bugs. This gets past those bugs
crashing; more work to do to get the correct
output.
R=rmistry@google.com,dsinclair@chromium.org
BUG=skia:5183
Review URL: https://codereview.chromium.org/1887073002
|
|
BUG=
Review URL: https://codereview.chromium.org/1882043004
|
|
https://codereview.chromium.org/1886753002/ )
Reason for revert:
Dr. Memory still broken: https://build.chromium.org/p/client.pdfium/builders/drm_win_xfa/builds/330/steps/pixel%20tests/logs/stdio
Original issue's description:
> Reland Combined test runner.
>
> This reverts commit 7a4374583efc0c41c826122aa26c1198c8d5cc37.
>
> Original Commit Message:
>
> This CL revives the old CL to combine the test runners [1] which was reverted
> due to failing font_size tests. I've deleted the font_size.pdf as it is not
> needed and for testing. Pixel tests are either .in or .pdf files, not both.
>
> Original description:
> This CL takes the three test runners (corpus, javascript, pixel) and combines
> the code into a single test_runner file. Each of the individual runners still
> exists and calls the test runner with their data directory.
>
> With this change, the pixel and javascript test will now run in parallel if
> multiple processors are available.
>
> 1-https://codereview.chromium.org/1430623006/
>
> Committed: https://pdfium.googlesource.com/pdfium/+/9cec54ab0a5461b3075c585f8f233dbfd06c2cbd
TBR=tsepez@chromium.org,ochang@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/1890703002
|
|
This Cl removes several FWL classes that aren't removed. These include:
* IFWL_Content
* CFWL_ContentImp
* CFWL_CustomPanelImp
* CFWL_CustomImp
* IFWL_Custom
* IFWL_CustomPanel
* IFWL_Proxy
* CFWL_App
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1883943002
|
|
BUG=
Review URL: https://codereview.chromium.org/1885973002
|
|
Add iterators to enable range based for loop. Also add unit tests for recent modified functions.
Review URL: https://codereview.chromium.org/1878803002
|
|
This reverts commit 7a4374583efc0c41c826122aa26c1198c8d5cc37.
Original Commit Message:
This CL revives the old CL to combine the test runners [1] which was reverted
due to failing font_size tests. I've deleted the font_size.pdf as it is not
needed and for testing. Pixel tests are either .in or .pdf files, not both.
Original description:
This CL takes the three test runners (corpus, javascript, pixel) and combines
the code into a single test_runner file. Each of the individual runners still
exists and calls the test runner with their data directory.
With this change, the pixel and javascript test will now run in parallel if
multiple processors are available.
1-https://codereview.chromium.org/1430623006/
Review URL: https://codereview.chromium.org/1886753002
|
|
This CL removes various methods from FWL that are not called.
Review URL: https://codereview.chromium.org/1886703005
|
|
- Use std::unique_ptr.
- Make dtor protected.
- Simplify logic.
- Remove unused bits from CXFA_FFPageView as well.
Review URL: https://codereview.chromium.org/1878963004
|
|
R=dsinclair@chromium.org,zhaoqin@chromium.org
Review URL: https://codereview.chromium.org/1890593002
|
|
Remove unused or ifdef'd code from FWL.
Review URL: https://codereview.chromium.org/1874963002
|
|
This is an intermediate step to creating a unified test
runner. We need to update Dr Memory to pass the -j 1 flag
to the pixel and javascript tests. In order to do so, we
need to have the flag available.
The flag will be enabled for pixel and javascript tests
when [1] lands.
1- https://codereview.chromium.org/1886753002/
Review URL: https://codereview.chromium.org/1882143005
|
|
These interfaces were not implemented, removed.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1866333003
|
|
This CL removes the IFPF_DeviceModule, IFPF_FontMgr and IFPF_Font interfaces
in favour of their concrete classes.
BUG=pdfium:467
Review URL: https://codereview.chromium.org/1881043004
|
|
Clean up three 4701 warnings (use potientially uninitialized variable)
which are the only ones left;
Re-enable warning 4701 for GN build;
Remove an unused data structure;
BUG=pdfium:29
Review URL: https://codereview.chromium.org/1885093002
|
|
This CL replaces IFX_Barcode with the concrete class.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1890443002
|
|
(patchset #1 id:1 of https://codereview.chromium.org/1887643002/ )
Reason for revert:
pdfium still passes /GS
Original issue's description:
> clang/win: Stop passing -Qunused-arguments in pdfium too.
>
> We stopped passing this in Chromium a while ago.
>
> BUG=504658
>
> Committed: https://pdfium.googlesource.com/pdfium/+/112be9813ed7bf4e082048eda5f4a7d3837d116c
TBR=thestig@chromium.org,dsinclair@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=504658
Review URL: https://codereview.chromium.org/1883823002
|
|
We stopped passing this in Chromium a while ago.
BUG=504658
Review URL: https://codereview.chromium.org/1887643002
|
|
This CL removes IFX_ArabicChar, IFX_RTFBreak, IFX_TxtBreak, IFX_WordBreak,
IFX_FormatString, and IFX_GSUBTable. References were updated to be the concrete
classes.
The CFX_GSUBTable was also removed as it is unused.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1882213002
|
|
Review URL: https://codereview.chromium.org/1882673002
|
|
Similar to https://codereview.chromium.org/1876203002 but in a
different file. The result is still not as efficient as possible
owing to the conversions back and forth to C types.
Convert these methods to ordinary functions in anon namespace
while we're at it.
Review URL: https://codereview.chromium.org/1882173002
|
|
The signed/unsigned comparison is causing the chromium windows GN build
broken.
Review URL: https://codereview.chromium.org/1884773002
|
|
if |m_Family| was RGB, the code assumed there were 3 components, which
may not be the case.
BUG=chromium:602046
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1877033003
|
|
This Cl removes the two interfaces and renames CFDE_SolidBrush to CFDE_Brush.
Uncalled methods are removed from both CFDE_Brush and CFDE_Pen and code
simplified to match.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1881803003
|
|
R=tsepez@chromium.org,weili@chromium.org
Review URL: https://codereview.chromium.org/1879083002
|
|
Regular, but overdue roll.
Review URL: https://codereview.chromium.org/1879923002
|
|
All of the ICodec_* interfaces had a single implementation. This CL removes
the interfaces and uses the concrete classes in their place.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1876023003
|
|
Attempting to open bug_434.pdf on my Linux box would fail with:
../../xfa/fxfa/app/xfa_fwltheme.cpp:96: virtual FWL_ERR
CXFA_FWLTheme::Initialize(): Assertion `__null != m_pCalendarFont' failed.
I tracked the regression back to [1].
The issue seems to be in CFX_FontManager::AddInstalledFont we will only add
one font for a given Charset. In my case I end up loading 6 charsets, but the
fonts are all strange ones. When I open the PDF, it fails to find 'Arial'
because I've registered these other fonts.
To fix this I changed the m_FaceArray into a struct of {name, chraset}. Then
we record all fonts into this list and search over that list for the charset
when needed. This allows bug_434.pdf to open and the test to pass successfully.
1- https://pdfium.googlesource.com/pdfium/+/fe73e7849b8b4ce49408d2f52f3fc29b370b82b5
Review URL: https://codereview.chromium.org/1874433002
|
|
Review URL: https://codereview.chromium.org/1878293002
|
|
We only ever create a CFDE_SolidBrush, there is nothing which creates Texture,
Hatch or LinearGradient brushes. This Cl removes all the code that isn't
used for SolidBrush.
A followup Cl will rename SolidBrush to Brush and remove the Brush interface
in favour of the concrete class.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1877383002
|
|
Using these webpages as guides
http://www.globelegislators.org/pdfjs/test/pdfs/alphatrans.pdf
http://www.antennahouse.com/antenna1/wp-content/uploads/2015/07/background-image-gradient-1.pdf
flesh out the gradient shaders to include the PostScript Type 0
sampling function and to include radial gradients. This CL makes
rendering these pages agree with Adobe Reader output.
Some of these examples use an Extend array to clip the gradient.
Skia does not currently support this natively, so construct the
clip manually for now.
Other PDF pages may construct gradients using alternate mechanisms
-- this code will continue to be refactored as those come to light.
In particular, this CL sets up the clip and matrix differently for
axial gradients and radial gradients -- while it makes sense to do
it one way only, I prefer to defer until I have more examples to
work with.
R=dsinclair@chromium.org,tsepez@chromium.org
Review URL: https://codereview.chromium.org/1870463002
|
|
GetConstString() has sharp edges in that when applied to
a CPDF_Number, it must return null whereas GetString() returns
a the stringified number, because of the inability to
control the lifetime of the underlying allocated string.
Deleting this method showed several places where we
actually wanted a *String, not a *StringC, so we were
re-allocating a string we already had.
Review URL: https://codereview.chromium.org/1879683002
|
|
Don't try to copy the string until we are sure we need to
change it.
Review URL: https://codereview.chromium.org/1877993002
|
|
Helps to avoid re-allocating strings when the caller already
has one allocated.
Review URL: https://codereview.chromium.org/1876203002
|
|
This Cl removes the IFDE_CSSAccelerator header and replaces the usage with
the concrete class.
The interfaces and methods in the CSSComputedStyle class are cleanedup to remove
any unused methods.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1876253002
|