[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gambas-bugtracker] Bug #3139: gb.pdf fails to build with poppler 26.02.0


http://gambaswiki.org/bugtracker/edit?object=BUG.3139&from=L21haW4-

Comment #3 by Bernhard ROSENKRÄNZER:

No AI at work here -- but a slightly insane change in poppler.
You're absolutely right that the color *used* to be the fourth argument, but they switched them around (apparently to control which one is optional and which one isn't).

This is the prototype of the SplashOutputDev constructor in poppler 26.02.0:

`SplashOutputDev(SplashColorMode colorModeA, int bitmapRowPadA, SplashColorPtr paperColorA, bool bitmapTopDownA = true, SplashThinLineMode thinLineMode = splashThinLineDefault, bool overprintPreviewA = false);`

Without the std::move bit, the build fails here:

```
CPdfDocument.cpp:523:13: error: no matching constructor for initialization of 'PDFDoc'
  523 |         test = new PDFDoc(stream);
      |                    ^      ~~~~~~
/usr/include/poppler/PDFDoc.h:135:14: note: candidate constructor not viable: no known conversion from 'MemStream *' to 'std::unique_ptr<GooString>' for 1st argument
  135 |     explicit PDFDoc(std::unique_ptr<GooString> &&fileNameA, const std::optional<GooString> &ownerPassword = {}, const std::optional<GooString> &userPassword = {}, const std::function<void()> &xrefReconstructedCallback = {});
      |              ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/poppler/PDFDoc.h:141:14: note: candidate constructor not viable: no known conversion from 'MemStream *' to 'std::unique_ptr<BaseStream>' for 1st argument
  141 |     explicit PDFDoc(std::unique_ptr<BaseStream> strA, const std::optional<GooString> &ownerPassword = {}, const std::optional<GooString> &userPassword = {}, const std::function<void()> &xrefReconstructedCallback = {});
      |              ^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/poppler/PDFDoc.h:144:5: note: candidate constructor not viable: no known conversion from 'MemStream *' to 'const PDFDoc' for 1st argument
  144 |     PDFDoc(const PDFDoc &) = delete;
      |     ^      ~~~~~~~~~~~~~~
/usr/include/poppler/PDFDoc.h:388:5: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
  388 |     PDFDoc();
      |     ^
1 error generated.
```



----[ Gambas bugtracker-list is hosted by https://www.hostsharing.net ]----