diff options
| author | Jay Sorg <jay.sorg@gmail.com> | 2014-07-03 00:02:06 -0700 |
|---|---|---|
| committer | Jay Sorg <jay.sorg@gmail.com> | 2014-07-03 00:02:06 -0700 |
| commit | 98fbca98dbd3b480adda35a055eec0c9634943eb (patch) | |
| tree | 8498fc99eaa2dfcdd6aab3162a11612751bf9400 | |
| parent | ba6c71fd378fa10c8f0379325556daf8fe0219f4 (diff) | |
| download | xrdp-proprietary-98fbca98dbd3b480adda35a055eec0c9634943eb.tar.gz xrdp-proprietary-98fbca98dbd3b480adda35a055eec0c9634943eb.zip | |
xup: check for g_shmat failure and change error case
| -rw-r--r-- | xup/xup.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -1125,6 +1125,12 @@ process_server_paint_rect_shmem(struct mod *mod, struct stream *s) { mod->screen_shmem_id = shmem_id; mod->screen_shmem_pixels = g_shmat(mod->screen_shmem_id); + if (mod->screen_shmem_pixels == (void*)-1) + { + /* failed */ + mod->screen_shmem_id = 0; + mod->screen_shmem_pixels = 0; + } } if (mod->screen_shmem_pixels != 0) { @@ -1137,10 +1143,6 @@ process_server_paint_rect_shmem(struct mod *mod, struct stream *s) bmpdata, width, height, srcx, srcy); } - else - { - rv = 1; - } send_paint_rect_ack(mod, flags, x, y, cx, cy, frame_id); return rv; } |
