diff options
Diffstat (limited to 'core/fpdfapi/page/fpdf_page_func.cpp')
-rw-r--r-- | core/fpdfapi/page/fpdf_page_func.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/core/fpdfapi/page/fpdf_page_func.cpp b/core/fpdfapi/page/fpdf_page_func.cpp index b12b2863fe..30f3b895d4 100644 --- a/core/fpdfapi/page/fpdf_page_func.cpp +++ b/core/fpdfapi/page/fpdf_page_func.cpp @@ -529,9 +529,11 @@ bool CPDF_SampledFunc::v_Init(CPDF_Object* pObj) { bool CPDF_SampledFunc::v_Call(float* inputs, float* results) const { int pos = 0; - std::vector<float> encoded_input(std::max(16U, m_nInputs)); - std::vector<uint32_t> index(std::max(32U, m_nInputs * 2)); - uint32_t* blocksize = index.data() + m_nInputs; + CFX_FixedBufGrow<float, 16> encoded_input_buf(m_nInputs); + float* encoded_input = encoded_input_buf; + CFX_FixedBufGrow<uint32_t, 32> int_buf(m_nInputs * 2); + uint32_t* index = int_buf; + uint32_t* blocksize = index + m_nInputs; for (uint32_t i = 0; i < m_nInputs; i++) { if (i == 0) blocksize[i] = 1; |