Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1097)

Unified Diff: core/fpdfapi/fpdf_page/fpdf_page_parser.cpp

Issue 2294553002: Revert "Use ->() in CPDF_ColorState" (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « core/fpdfapi/fpdf_page/cpdf_graphicstates.cpp ('k') | core/fpdfapi/fpdf_page/fpdf_page_parser_old.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: core/fpdfapi/fpdf_page/fpdf_page_parser.cpp
diff --git a/core/fpdfapi/fpdf_page/fpdf_page_parser.cpp b/core/fpdfapi/fpdf_page/fpdf_page_parser.cpp
index 5dc8480423e328a35248951fe52bc17810979b22..5d5b75b60ec6a1ec70f13b2d972cc794171ed3dd 100644
--- a/core/fpdfapi/fpdf_page/fpdf_page_parser.cpp
+++ b/core/fpdfapi/fpdf_page/fpdf_page_parser.cpp
@@ -6,7 +6,6 @@
#include "core/fpdfapi/fpdf_page/pageint.h"
-#include <algorithm>
#include <memory>
#include <utility>
#include <vector>
@@ -693,7 +692,7 @@ void CPDF_StreamContentParser::Handle_SetColorSpace_Fill() {
return;
m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->GetFillColor()->SetColorSpace(pCS);
+ m_pCurStates->m_ColorState->m_FillColor.SetColorSpace(pCS);
}
void CPDF_StreamContentParser::Handle_SetColorSpace_Stroke() {
@@ -702,7 +701,7 @@ void CPDF_StreamContentParser::Handle_SetColorSpace_Stroke() {
return;
m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->GetStrokeColor()->SetColorSpace(pCS);
+ m_pCurStates->m_ColorState->m_StrokeColor.SetColorSpace(pCS);
}
void CPDF_StreamContentParser::Handle_SetDash() {
@@ -846,16 +845,14 @@ void CPDF_StreamContentParser::Handle_EOFillPath() {
void CPDF_StreamContentParser::Handle_SetGray_Fill() {
FX_FLOAT value = GetNumber(0);
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY), &value, 1);
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY);
+ m_pCurStates->m_ColorState.SetFillColor(pCS, &value, 1);
}
void CPDF_StreamContentParser::Handle_SetGray_Stroke() {
FX_FLOAT value = GetNumber(0);
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokeColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY), &value, 1);
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICEGRAY);
+ m_pCurStates->m_ColorState.SetStrokeColor(pCS, &value, 1);
}
void CPDF_StreamContentParser::Handle_SetExtendGraphState() {
@@ -903,12 +900,11 @@ void CPDF_StreamContentParser::Handle_SetCMYKColor_Fill() {
return;
FX_FLOAT values[4];
- for (int i = 0; i < 4; i++)
+ for (int i = 0; i < 4; i++) {
values[i] = GetNumber(3 - i);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICECMYK), values, 4);
+ }
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICECMYK);
+ m_pCurStates->m_ColorState.SetFillColor(pCS, values, 4);
}
void CPDF_StreamContentParser::Handle_SetCMYKColor_Stroke() {
@@ -916,12 +912,11 @@ void CPDF_StreamContentParser::Handle_SetCMYKColor_Stroke() {
return;
FX_FLOAT values[4];
- for (int i = 0; i < 4; i++)
+ for (int i = 0; i < 4; i++) {
values[i] = GetNumber(3 - i);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokeColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICECMYK), values, 4);
+ }
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICECMYK);
+ m_pCurStates->m_ColorState.SetStrokeColor(pCS, values, 4);
}
void CPDF_StreamContentParser::Handle_LineTo() {
@@ -986,12 +981,11 @@ void CPDF_StreamContentParser::Handle_SetRGBColor_Fill() {
return;
FX_FLOAT values[3];
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < 3; i++) {
values[i] = GetNumber(2 - i);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICERGB), values, 3);
+ }
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICERGB);
+ m_pCurStates->m_ColorState.SetFillColor(pCS, values, 3);
}
void CPDF_StreamContentParser::Handle_SetRGBColor_Stroke() {
@@ -999,12 +993,11 @@ void CPDF_StreamContentParser::Handle_SetRGBColor_Stroke() {
return;
FX_FLOAT values[3];
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < 3; i++) {
values[i] = GetNumber(2 - i);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokeColor(
- CPDF_ColorSpace::GetStockCS(PDFCS_DEVICERGB), values, 3);
+ }
+ CPDF_ColorSpace* pCS = CPDF_ColorSpace::GetStockCS(PDFCS_DEVICERGB);
+ m_pCurStates->m_ColorState.SetStrokeColor(pCS, values, 3);
}
void CPDF_StreamContentParser::Handle_SetRenderIntent() {}
@@ -1020,22 +1013,26 @@ void CPDF_StreamContentParser::Handle_StrokePath() {
void CPDF_StreamContentParser::Handle_SetColor_Fill() {
FX_FLOAT values[4];
- uint32_t nargs = std::min(m_ParamCount, 4u);
- for (uint32_t i = 0; i < nargs; i++)
+ int nargs = m_ParamCount;
+ if (nargs > 4) {
+ nargs = 4;
+ }
+ for (int i = 0; i < nargs; i++) {
values[i] = GetNumber(nargs - i - 1);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillColor(nullptr, values, nargs);
+ }
+ m_pCurStates->m_ColorState.SetFillColor(nullptr, values, nargs);
}
void CPDF_StreamContentParser::Handle_SetColor_Stroke() {
FX_FLOAT values[4];
- uint32_t nargs = std::min(m_ParamCount, 4u);
- for (uint32_t i = 0; i < nargs; i++)
+ int nargs = m_ParamCount;
+ if (nargs > 4) {
+ nargs = 4;
+ }
+ for (int i = 0; i < nargs; i++) {
values[i] = GetNumber(nargs - i - 1);
-
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokeColor(nullptr, values, nargs);
+ }
+ m_pCurStates->m_ColorState.SetStrokeColor(nullptr, values, nargs);
}
void CPDF_StreamContentParser::Handle_SetColorPS_Fill() {
@@ -1057,12 +1054,10 @@ void CPDF_StreamContentParser::Handle_SetColorPS_Fill() {
if (nvalues != nargs) {
CPDF_Pattern* pPattern = FindPattern(GetString(0), false);
if (pPattern) {
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillPattern(pPattern, values, nvalues);
+ m_pCurStates->m_ColorState.SetFillPattern(pPattern, values, nvalues);
}
} else {
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetFillColor(nullptr, values, nvalues);
+ m_pCurStates->m_ColorState.SetFillColor(nullptr, values, nvalues);
}
FX_Free(values);
}
@@ -1087,12 +1082,10 @@ void CPDF_StreamContentParser::Handle_SetColorPS_Stroke() {
if (nvalues != nargs) {
CPDF_Pattern* pPattern = FindPattern(GetString(0), false);
if (pPattern) {
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokePattern(pPattern, values, nvalues);
+ m_pCurStates->m_ColorState.SetStrokePattern(pPattern, values, nvalues);
}
} else {
- m_pCurStates->m_ColorState.MakePrivateCopy();
- m_pCurStates->m_ColorState->SetStrokeColor(nullptr, values, nvalues);
+ m_pCurStates->m_ColorState.SetStrokeColor(nullptr, values, nvalues);
}
FX_Free(values);
}
« no previous file with comments | « core/fpdfapi/fpdf_page/cpdf_graphicstates.cpp ('k') | core/fpdfapi/fpdf_page/fpdf_page_parser_old.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698