Commit Graph

102 Commits

Author SHA1 Message Date
Armin Novak
bc69730863 Fixed memory leak in pointer free. 2016-10-10 10:42:14 +02:00
Armin Novak
2cf5f1b0ba Fixed missing NULL pointer checks. 2016-10-06 13:43:14 +02:00
Armin Novak
dd676c7b29 Fixed missing NULL checks. 2016-10-06 13:43:13 +02:00
Armin Novak
161685b25c Fixed some more glyph chache bugs. 2016-10-06 13:43:11 +02:00
Armin Novak
0c57065c73 GlyphCache: Erasing destination if not redundant. 2016-10-06 13:43:11 +02:00
Armin Novak
416801a106 Fixed warning. 2016-10-06 13:43:10 +02:00
Armin Novak
f16ffaefa7 Fixed glyph cache issues. 2016-10-06 13:43:08 +02:00
Armin Novak
0d56de57c4 Glyph offset fix. 2016-10-06 13:43:08 +02:00
Armin Novak
b765374d32 Refactored BitBlt, implementing everything now. 2016-10-06 13:43:08 +02:00
Armin Novak
a978ccc0bb Added argument checks. 2016-10-06 13:43:07 +02:00
Armin Novak
867528015a Simplified bitmap drawing. 2016-10-06 13:43:03 +02:00
Armin Novak
032bdef955 Unified bitmap drawing. 2016-10-06 13:43:03 +02:00
Armin Novak
b8ff3cb235 Fixed (a lot of) GDI drawing issues. 2016-10-06 13:43:03 +02:00
Armin Novak
3f90966da6 Bug fixes. 2016-10-06 13:43:03 +02:00
Armin Novak
e650fdb2b6 Bugfixes. 2016-10-06 13:43:02 +02:00
Armin Novak
17fd5526ac Cleanups. 2016-10-06 13:43:02 +02:00
Armin Novak
7a20ff5c30 Refactored bitmap API. 2016-10-06 13:43:02 +02:00
Armin Novak
8b69b16cbb Refactored Glyph API. 2016-10-06 13:43:02 +02:00
Armin Novak
9d5ca34d0d Fixed pointer initialisation for X11. 2016-10-06 13:43:02 +02:00
Armin Novak
c229a1939d Updated codec API, unified drawing order color decoding. 2016-10-06 13:43:02 +02:00
Armin Novak
f9a89ae6b4 Bug fixes, refactoring. 2016-10-06 13:43:01 +02:00
Armin Novak
e860fde4bc Fixed function arguments. 2016-10-06 13:43:00 +02:00
Armin Novak
d98677094e Fixed warnings. 2016-10-06 13:43:00 +02:00
Armin Novak
e1c3adf61f freerdp_image_copy fixes, 8bit color improvements. 2016-10-06 13:42:59 +02:00
Armin Novak
48d1b4ee13 Fixed color ordering for GDI. 2016-10-06 13:42:59 +02:00
Armin Novak
0e7bb508c1 Bitmaps now remember their format. 2016-10-06 13:42:59 +02:00
Armin Novak
df35c135d1 Fixed color conversion, unified GFX and updated API. 2016-10-06 13:42:58 +02:00
Giovanni Panozzo
1dea98026a Fix char signedness in glyph offset calculation, fixes #2137 2016-02-21 18:15:32 +01:00
Daniel Bungert
32e2f81cc5 Clamp ultra-wide glyph opRight vals to desktop width 2015-10-14 14:16:19 -06:00
Giovanni Panozzo
85b5c5f890 Signed glyph offset calculation, fixes #2137 2015-06-25 16:49:29 +02:00
Bernhard Miklautz
5de0e02c61 cache: fix regression
Fix a regression in cache_new introduced in commit
b4f147e242ea396ef92082d29866e5ab7d041b4e
2015-06-22 19:21:47 +02:00
David FORT
7c3f8f33ab Fixes for malloc / calloc + other fixes
This patch contains:

* checks for malloc return value + treat callers;
* modified malloc() + ZeroMemory() to calloc();
* misc fixes of micro errors seen during the code audit:
** some invalid checks in gcc.c, also there were some possible
integer overflow. This is interesting because at the end the data are parsed
and freed directly, so it's a vulnerability in some kind of dead code (at least
useless);
** fixed usage of GetComputerNameExA with just one call, when 2 were used
in misc places. According to MSDN GetComputerNameA() is supposed to return
an error when called with NULL;
** there were a bug in the command line parsing of shadow;
** in freerdp_dynamic_channel_collection_add() the size of array was multiplied
by 4 instead of 2 on resize
2015-06-22 19:21:47 +02:00
Norbert Federa
535a4352a7 shadow/client context cleanup and unused vars fix 2015-05-21 16:05:05 +02:00
Norbert Federa
1eff1a345e free can handle NULL perfectly fine 2015-05-11 09:07:39 +02:00
Bernhard Miklautz
2c072d33d3 Fix GDI return values and other fixes
* top level GDI functions return 0 on error and != 0 otherwise but the
  low level functions (16bpp.c, 8bpp.c 32bpp.c) which are called did it
	exactly the other way around. Those were adapted.
* change gdi_InvalidateRegion to BOOL and check calls where appropriate
* integrate comments from pull request
2015-04-21 14:18:07 +02:00
Bernhard Miklautz
515502ffa5 change return types of callbacks to BOOL
* change all client/server callbacks to BOOL
* update all clients accordingly
* add multiple return value checks
* small fixes
2015-04-21 14:18:07 +02:00
Bernhard Miklautz
d625edbe97 gfx/pointer: add support to set pointer
Extend rdp_pointer with function SetPosition. Can then be used by
clients support setting pointer by server which might be used in
shadowing scenarios.
2015-02-02 10:57:31 +01:00
Marc-André Moreau
ee5a354328 freerdp: more valgrind fixes 2014-12-27 15:34:45 -05:00
Norbert Federa
a7c90e16a3 cache: fixes for GlyphIndex, FastIndex & FastGlyph
* update_process_glyph_fragments() ignored the text background rectangle

* moved the OpRight value fix-up to update_process_glyph_fragments() since
  it is required for all glyph primary drawing orders
2014-12-05 18:28:43 +01:00
Marc-André Moreau
fdd2dc7601 freerdp: patch valgrind leaks, cleanup 2014-12-03 14:17:27 -05:00
Armin Novak
cef228d0f4 Fixed memory leak. 2014-11-16 15:54:37 +01:00
Norbert Federa
62dbcac0c7 xfreerdp: fix glyph index primary drawing order
The fOpRedundant field of the GlyphIndex primary drawing order
(MS-RDPEGDI, chapter 2.2.2.2.1.1.2.13) was neglected which resulted in some
severe text rendering errors.
2014-10-29 20:56:26 +01:00
Marc-André Moreau
2a5192b027 Merge branch 'master' of github.com:awakecoding/FreeRDP into egfx
Conflicts:
	client/Windows/wf_cliprdr.h
	client/Windows/wf_event.h
	client/X11/xf_client.c
	client/X11/xf_gdi.c
	libfreerdp/gdi/gdi.c
	server/Mac/mf_input.c
2014-09-17 19:09:56 -04:00
Marc-André Moreau
73471eb1f0 libfreerdp-gdi: fix 8bpp mode 2014-09-17 18:30:09 -04:00
Armin Novak
06b609062d Removed remaining printf and DEBUG_* usages. 2014-09-15 09:01:05 +02:00
Armin Novak
2f519d7f16 Replaced logging in libfreerdp with wlog defines. 2014-09-15 08:48:46 +02:00
Marc-André Moreau
f693ff42d7 Merge pull request #2097 from awakecoding/egfx
GDI Bitmap Update Optimization
2014-09-12 15:12:52 -04:00
Marc-André Moreau
efd9b8f7a9 libfreerdp-cache: fix 15bpp 2014-09-12 01:11:40 -04:00
Marc-André Moreau
5b2a465ee6 libfreerdp-gdi: start optimizing gdi bitmap update 2014-09-11 20:12:32 -04:00
Bernhard Miklautz
0313ca3622 libfreerdp: always build "MONOLITHIC"
"libfreerdp" consisted of multiple (small) single libraries. If the cmake
option MONOLITHIC was used only one library was build combining all of
the libfreerdp-* libraries.
The only exceptions to this are libfreerdp-server and libfreerdp-client these
are build as separate libraries.

This commit obsoltes non-monolithic builds and makes monolithic builds
the default. The cmake option MONOLITHIC is also removed.
2014-09-12 00:19:53 +02:00