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;  } | 
