Repository navigation
Conversation
linev
marked this pull request as draft
October 30, 2026 06:59
linev
force-pushed
the
asimage_utils_linker
branch
from
October 30, 2026 07:20
39c03ff to
cbccdb9
Compare
It is thread_local and correctly cleanup when thread or process is closed. It only should be used for batch (without disaplay) operation First use for paint and assign image
When painting text, asimage create font manager. It need to be correctly destroyed at the end
Static method InitVisual() holds own static pointer, which returned from the method. All methods where InitVisual() is used are deprecated, correspondent docu refer also on alternative methods from TASUtils which can be used.
It will return not-null value only for X11-based disaplays in not-batch mode. In all other cases alternative methods should be used. Intention to move all asimage calls only inside TASImage class to avoid different linking side-effects observed on Windows
Provide several static private methods for such redirection. Link libAfterImage only with TASImage class, trying to avoid any future conflicts with Windows linker Simultaneous link of same static library with two shared libraries can be a problem
linev
force-pushed
the
asimage_utils_linker
branch
from
October 30, 2026 11:59
cbccdb9 to
79f7467
Compare
linev
marked this pull request as ready for review
October 30, 2026 12:58
Test Results 24 files 24 suites 4d 1h 2m 22s ⏱️ Results for commit 79f7467. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For X11-specific methods there is special
ASVisualinstance which needs X11display, screen and several other parameters. Use this instance only for X11-specific
operations. This instance returned by static TASImage::InitVisual() method.
All old methods where such instance is used now marked as
@deprecatedFor most of basic image transformations like
MirrororCroporMergesuch x11-specific visualis not necessary. Therefore
BatchASVisualHolderclass is introduced whichholdes thread_local "batch" instance of
ASVisual. It used now in most of TASImage methodsand automatically cleanup when thread closed or process ends. This holder object
also manages font handler when required
IMPORTANT!
Move all direct calls to
libAfterImagefunctions to TASImage library.Original design of
TASUtilsclass had dirct link with staticlibAfterImagelibrary.But
TASImageitself linked also withlibAfterImage- making troubles on Windows.Therefore number of private static methods were introduced in
TASImageclasswhich just redirect to existing
libAferImagefunctions.TASUtilsuses onlyTASImagemethods and not linked withlibAfterImageProbably need to be applied to 6.42 branch