Commit Graph

11519 Commits

Author SHA1 Message Date
Ondrej Holy
3137caebf2 Fix colors on big endian (#4135)
* client/x11: Fix colors on big endian

The bitmaps are recieved in little endian byte order (LSBFirst in terms
of X11). This is a problem on systems, where bitmaps are expected in big
endian byte order (MSBFirst). X11 client tries to handle this situation
by different color formats (e.g. RGBX vs. BGRX), but this doesn't work.
BGRX is not MSBFirst variant of RGBX, it should be XRGB. But this would
work only for 32/24 depths, where color channels matches bytes. Let's
say to the XServer that all the bitmaps are in LSBFirst encoding instead
of changing the color formats on big endian systems.

https://github.com/FreeRDP/FreeRDP/issues/2520

* client/x11: Fix cursor color on big endian

The cursor color is wrong on big endian systems. It is not probably
possible to force bitmap_order for XcursorImage as it is possible for
XImage. Fortunately, cursors are always 32 bit so we can use ABGR
instead of BGRA to deal with.

https://github.com/FreeRDP/FreeRDP/issues/2520

* client/x11: Fix comment indentation

The comment has wrong indentation for some reason, let's fix it.

* client/x11: Fix BGR vs. RGB detection

The BGR vs. RGB detection code is leftover from history and I am conviced
that it is wrong with the current color handling, where invert flag is TRUE
by default. However, I suppose that the detection still makes sense and
XServer may use the inverted formats in some cases. Maybe we can force XServer
to use our masks somehow, but let's just fix the value to FALSE now.

* client/x11: Remove unused color shifts

The color shifts are lefover from history and are not used in current
code. Let's remove them.
2017-09-18 10:47:56 +02:00
David Fort
a514ae9638 Merge pull request #4121 from ondrejholy/setsurface-segfault-fix
Various fixes from #4117
2017-09-18 10:17:43 +02:00
David Fort
dbc5584a68 Merge pull request #4052 from akallabeth/mac_fixes
Mac drive fixes
2017-09-12 23:16:39 +02:00
MartinHaimberger
f6e0b438a2 Merge pull request #4127 from mfleisz/avc420
channels: Don't send gfx capversion 10 if AVC420 is requested
2017-09-11 16:34:24 +02:00
Martin Fleisz
e28ea4555f channels: Don't send gfx capversion 10 if AVC420 is requested 2017-09-11 12:05:03 +02:00
Ondrej Holy
e9ffff56bc cache: Use Bitmap_Free instead of free
Bitmap_Alloc is used to allocate memory of bitmap, Bitmap_Free should
be used to release that memory. Let's change free to Bitmap_Free.

https://github.com/FreeRDP/FreeRDP/issues/4117
2017-09-07 09:38:44 +02:00
Ondrej Holy
9cccd4888d orders: Fix OFFSCREEN_DELETE_LIST allocation size
The size of OFFSCREEN_DELETE_LIST list allocation was incorrectly changed
by commit 99b1481 and consequently fixed incorrectly by commit 8a0fe086.
Let's count the allocation size based on new size and not based on current
size in order to prevent some memory issues.

https://github.com/FreeRDP/FreeRDP/issues/4117
2017-09-07 09:38:44 +02:00
Ondrej Holy
048e7f264b orders: Fix ORDER_TYPE_GDIPLUS_END check
Commit 6fd03ab introduced security checks for orders, but
ORDER_TYPE_GDIPLUS_END check fails in case of success and vice versa.
Let's add the missing question mark.

https://github.com/FreeRDP/FreeRDP/issues/4117
2017-09-07 09:38:44 +02:00
Ondrej Holy
5d6e2078c7 cache: Check return value from offscreen_cache_get
Currently, SetSurface is called regardless of return value from
offscreen_cache_get. It may happen that bitmap is not found in a
cache from some reason, which may lead to segfaults. Let's check
the returned value before use.

https://github.com/FreeRDP/FreeRDP/issues/4117
2017-09-07 09:38:44 +02:00
Ondrej Holy
4239660e34 client/X11: Check arguments in xf_Bitmap_SetSurface
Arguments of xf_Bitmap_SetSurface are not checked before use currently
which may lead to segfaults. It may happen if bitmap is not found in a
cache from some reason. Let's check the arguments before use similarly
as it is done in client/Windows/wf_graphics.c in order to avoid segfaults.

https://github.com/FreeRDP/FreeRDP/issues/4117
2017-09-07 09:38:44 +02:00
ChickenPeanut
0efb07bc66 Fixed BadValue with XCreateWindow
xf_FixWindowCoordinates occasionally set the dimensions of the window to invalid values (0) because the minimum value check was done at the beginning of the method rather than at the end
2017-09-03 18:52:34 -04:00
David Fort
3b8352690e Merge pull request #4079 from akallabeth/channel_pubsub_fix
Dynamic channel signal disconnect after the fact.
2017-08-31 10:22:43 +02:00
Armin Novak
d3df6ed40f Removed unused variable. 2017-08-31 09:57:49 +02:00
Armin Novak
8a5c78bde6 Unified dynamic channel cleanup code. 2017-08-31 09:55:59 +02:00
David Fort
5115ecd948 Merge pull request #4063 from akallabeth/auth_fixes
Fixed leaks, certificate comparison and channel context cleanup
2017-08-30 10:19:12 +02:00
David Fort
5258a980f5 Merge pull request #4104 from abma/master
Revert "Possible fix for #4081 and #2707 (#4087)" (Part of #4096)
2017-08-29 11:06:13 +02:00
Bernhard Miklautz
6a83a1e7fa Merge pull request #4050 from akallabeth/rdpefs_server_client_name_fix
Mask out ignored bits from UnicodeFlag.
2017-08-29 10:35:45 +02:00
Bernhard Miklautz
52fbfb7b12 fix clang warnings, directly include wtypes.h (#4097)
* build: clang use -Wno-unused-command-line-argument

With clang 5.0 builds are quite noisy otherwise.

* Directly include wtypes.h

Directly include winpr/wtypes.h where _fseeki64 or _ftelli64 is used.

* fix build warnings with clang 5

clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning: parentheses-equality

* fix build warnings with clang 5

clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning: tautological-compare

* fix build warnings with clang 5

clang version: 5.0.0-svn310678-1~exp1 (branches/release_50)
Warning:
incompatible pointer types passing 'size_t *' (aka 'unsigned
long *') to parameter of type 'UINT32 *' (aka 'unsigned int *')
[-Wincompatible-pointer-types]
2017-08-29 09:09:38 +02:00
David Fort
9a81531cb6 Merge pull request #4100 from mmeyer724/wayland-opaque
wlfreerdp: improve performance by making the window opaque
2017-08-26 10:17:02 +02:00
David Fort
c26a7a9ca7 Merge pull request #4099 from mmeyer724/wayland-fullscreen
wlfreerdp: mirror display resolution in fullscreen mode
2017-08-26 10:13:42 +02:00
abma
165de91287 Revert "Possible fix for #4081 and #2707 (#4087)"
This reverts most of commit 6b7b602370.

Part of #4096
2017-08-22 22:45:38 +02:00
Michael Meyer
65daae0190 wlfreerdp: improve performance by making the window opaque 2017-08-17 17:32:26 -04:00
Michael Meyer
e695645a79 wlfreerdp: mirror display resolution in fullscreen mode 2017-08-17 14:23:45 -04:00
Bernhard Miklautz
f9a47a3469 Merge pull request #4098 from akallabeth/fix_rsa_generation
Fixed RSA generation for OpenSSL >= 1.1
2017-08-17 15:18:04 +02:00
Armin Novak
7e32e90d4c Fixed RSA generation for OpenSSL >= 1.1 2017-08-17 13:16:32 +02:00
Bernhard Miklautz
5f80636b38 Merge pull request #4095 from mmeyer724/wayland-scrolling
Fix scrolling crash in wayland client
2017-08-17 10:46:16 +02:00
Michael Meyer
c01442da2d Fixes scrolling crash in wlfreerdp
An "axis discrete" handler is required since protocol version 5:
https://code.woboq.org/qt5/include/wayland-client-protocol.h.html
Crash output: "listener function for opcode 8 of wl_pointer is NULL"
2017-08-16 18:02:07 +00:00
Armin Novak
f143fcc298 Fixed data type, eliminate warning. 2017-08-16 15:45:11 +02:00
Armin Novak
47feecf8d5 Added FindICU from CMake 3.7 for backward compatibility 2017-08-16 15:26:26 +02:00
Bernhard Miklautz
1e54fdb5c2 android: fix a regression with remote program (#4091)
Commit 54a7d799d1 introduced a problem
where /app was used instead of /shell causing a black screen when remote
programs were used. The Android client doesn't support remote apps
therefore /app can't work. "Remote program" just sets the selected
program as shell to run.
2017-08-16 13:28:11 +02:00
Bernhard Miklautz
ba9227d801 Merge pull request #4092 from akallabeth/afreerdp_no_client_name_escape
Do not add quotes to client hostname.
2017-08-16 13:26:47 +02:00
Armin Novak
eb0bf411af Do not add quotes to client hostname. 2017-08-16 11:31:33 +02:00
Armin Novak
9ebfbc1fcb FindNextFileAx, continue if a inalid file is found. 2017-08-16 10:25:23 +02:00
Bernhard Miklautz
ed36f55f3e Merge pull request #4088 from akallabeth/file_api_64bit_fixes
fseeko and ftello for 64bit file support.
2017-08-16 10:04:13 +02:00
Bernhard Miklautz
03c95e22a2 Merge pull request #4085 from akallabeth/file_warn_fix
Fixed FileSetFilePointer warnings
2017-08-16 08:09:31 +02:00
Jiang, Zihao
790c48017c Client/X11: Fix h264 context leak when DeleteSurface (#4089) 2017-08-14 10:16:14 +02:00
Kai
6b7b602370 Possible fix for #4081 and #2707 (#4087)
* detect openbox automatically

* format code

* copyright update

* free prop at the end of the function
2017-08-14 10:10:53 +02:00
Armin Novak
c3d4b7d262 fseeko and ftello for 64bit file support. 2017-08-14 08:42:49 +02:00
Bernhard Miklautz
b34b32bea7 Merge pull request #4084 from psumbera/master
On Solaris use standard conforming getpwnam_r().
2017-08-10 17:39:34 +02:00
Armin Novak
82d9ebc380 Fixed FileSetFilePointer warnings 2017-08-10 16:56:20 +02:00
Petr Sumbera
e5c925b63c On Solaris use standard conforming getpwnam_r(). 2017-08-10 07:36:25 -07:00
MartinHaimberger
80ed23779f Merge pull request #4076 from akallabeth/SetFilePointer_fix
Set file pointer fix
2017-08-09 10:35:37 +02:00
Bernhard Miklautz
8c891ae30b Merge pull request #4070 from yurashek/master
Sun keyboard - cursor keys
2017-08-08 21:17:01 +02:00
Armin Novak
32de218c3f Fixed file seek. 2017-08-08 10:52:11 +02:00
Armin Novak
7d7e5487ab Fixed SetFilePointer, added SetFilePointerEx 2017-08-08 10:51:50 +02:00
Jura Sasek
a84c5cbfb9 Sun keyboard 2017-08-04 13:09:32 +02:00
Armin Novak
efe6971899 Skip FIFO files in listings. 2017-08-04 09:01:13 +02:00
Armin Novak
0a23bdf61f Abort CreateFile for existing files of type FIFO 2017-08-03 14:45:19 +02:00
Armin Novak
436829142e Mapped ENOTCONN to ERROR_FILE_NOT_FOUND 2017-08-03 14:38:20 +02:00
David Fort
9a00b25adc Merge pull request #4071 from bmiklautz/debian_fixes
Fixes from the Debian project
2017-08-03 09:32:29 +02:00