pcSurfaceBits SurfaceBits;
pcSurfaceCommand SurfaceCommand;
+ void* state_start;
+
BITMAP_UPDATE bitmap_update;
PALETTE_UPDATE palette_update;
PLAY_SOUND_UPDATE play_sound;
MONITORED_DESKTOP_ORDER monitored_desktop;
SURFACE_BITS_COMMAND surface_bits_command;
+
+ void* state_end;
};
#endif /* __UPDATE_API_H */
return False;
rdp->state = CONNECTION_STATE_ACTIVE;
-
update_reset_state(rdp->update);
- rdp->update->switch_surface.bitmapId = SCREEN_BITMAP_SURFACE;
- IFCALL(rdp->update->SwitchSurface, rdp->update, &(rdp->update->switch_surface));
return True;
}
return True;
rdp->state = CONNECTION_STATE_ACTIVE;
+ update_reset_state(rdp->update);
if (!rdp_send_server_synchronize_pdu(rdp))
return False;
void update_reset_state(rdpUpdate* update)
{
- memset(&update->order_info, 0, sizeof(ORDER_INFO));
+ update->state_start = &update->state_start;
+ update->state_end = &update->state_end;
+ memset(update->state_start, 0, update->state_end - update->state_start);
update->order_info.orderType = ORDER_TYPE_PATBLT;
+ update->switch_surface.bitmapId = SCREEN_BITMAP_SURFACE;
+ IFCALL(update->SwitchSurface, update, &(update->switch_surface));
}
static void update_begin_paint(rdpUpdate* update)
{
- update_reset_state(update);
+
}
static void update_end_paint(rdpUpdate* update)