Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Adélie Package Tree
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Adélie Linux
Adélie Package Tree
Commits
34879123
Unverified
Commit
34879123
authored
6 years ago
by
Anna Wilcox
Browse files
Options
Downloads
Patches
Plain Diff
user/tigervnc: add patch to fix BE<->LE connections
parent
43d7d42b
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
user/tigervnc/APKBUILD
+4
-2
4 additions, 2 deletions
user/tigervnc/APKBUILD
user/tigervnc/endian.patch
+51
-0
51 additions, 0 deletions
user/tigervnc/endian.patch
with
55 additions
and
2 deletions
user/tigervnc/APKBUILD
+
4
−
2
View file @
34879123
...
...
@@ -2,7 +2,7 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname
=
tigervnc
pkgver
=
1.9.0
pkgrel
=
0
pkgrel
=
1
pkgdesc
=
"High-performance, platform-neutral VNC remote desktop application"
url
=
"http://tigervnc.org/"
arch
=
"all"
...
...
@@ -15,6 +15,7 @@ makedepends="cmake fltk-dev fontconfig-dev gnutls-dev intltool
subpackages
=
"
$pkgname
-lang
$pkgname
-doc"
source
=
"tigervnc-
$pkgver
.tar.gz::https://github.com/TigerVNC/tigervnc/archive/v
$pkgver
.tar.gz
use-intltool.patch
endian.patch
"
build
()
{
...
...
@@ -40,4 +41,5 @@ package() {
}
sha512sums
=
"333910f567e6b5e4a5a22d898b2d4c3f4b834cb4cc8fc13ff55d31401894c0d5122a127692ec5eb51e412c945ff3ea5b8146f9ab22cbe1e47541e09239ec8c9d tigervnc-1.9.0.tar.gz
5c1cee98b7ba41c7cf121480fdfe16d5ef17c9562ff2ba3ea4e74235161fc63e2e3ed63e788c0aa999610b660b394c1269d6fdcc9716c5563651fd67d723f619 use-intltool.patch"
5c1cee98b7ba41c7cf121480fdfe16d5ef17c9562ff2ba3ea4e74235161fc63e2e3ed63e788c0aa999610b660b394c1269d6fdcc9716c5563651fd67d723f619 use-intltool.patch
189a51a542b368e4db22174d09f5b656848e94577bbf93b2388f54529f1c7c2d32e5b5283551b3fb067ba21f6464f60989e22d4cd11ed3d87d5c931301555b49 endian.patch"
This diff is collapsed.
Click to expand it.
user/tigervnc/endian.patch
0 → 100644
+
51
−
0
View file @
34879123
diff --git a/vncviewer/Surface_X11.cxx b/vncviewer/Surface_X11.cxx
index 3523da3d..6562634d 100644
--- a/vncviewer/Surface_X11.cxx
+++ b/vncviewer/Surface_X11.cxx
@@ -109,6 +109,7 @@
void Surface::blend(Surface* dst, int src_x, int src_y, int x, int y, int w, int
void Surface::alloc()
{
+ XRenderPictFormat templ;
XRenderPictFormat* format;
// Might not be open at this point
@@ -117,7 +118,37 @@
void Surface::alloc()
pixmap = XCreatePixmap(fl_display, XDefaultRootWindow(fl_display),
width(), height(), 32);
- format = XRenderFindStandardFormat(fl_display, PictStandardARGB32);
+ // Our code assumes a BGRA byte order, regardless of what the endian
+ // of the machine is or the native byte order of XImage, so make sure
+ // we find such a format
+ templ.type = PictTypeDirect;
+ templ.depth = 32;
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+ templ.direct.alpha = 0;
+ templ.direct.red = 8;
+ templ.direct.green = 16;
+ templ.direct.blue = 24;
+#else
+ templ.direct.alpha = 24;
+ templ.direct.red = 16;
+ templ.direct.green = 8;
+ templ.direct.blue = 0;
+#endif
+ templ.direct.alphaMask = 0xff;
+ templ.direct.redMask = 0xff;
+ templ.direct.greenMask = 0xff;
+ templ.direct.blueMask = 0xff;
+
+ format = XRenderFindFormat(fl_display, PictFormatType | PictFormatDepth |
+ PictFormatRed | PictFormatRedMask |
+ PictFormatGreen | PictFormatGreenMask |
+ PictFormatBlue | PictFormatBlueMask |
+ PictFormatAlpha | PictFormatAlphaMask,
+ &templ, 0);
+
+ if (!format)
+ throw rdr::Exception("XRenderFindFormat");
+
picture = XRenderCreatePicture(fl_display, pixmap, format, 0, NULL);
visFormat = XRenderFindVisualFormat(fl_display, fl_visual->visual);
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment