diff options
author | iovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a> | 2006-10-26 06:28:03 +0000 |
---|---|---|
committer | iovar <iovar@f606c939-3180-4ac9-a4b8-4b8779d57d0a> | 2006-10-26 06:28:03 +0000 |
commit | ef155ccbd15bdfca39b755dd8194854422f854e4 (patch) | |
tree | 804ddfdaabd2748833044ca54c7b68b964f7dcde /rMD-exp/src/recordmydesktop.c | |
parent | d8de31cc23f9102813fb74c8c98e75a8ee9228b2 (diff) |
made sure compositing managers don't cause a hang
git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@121 f606c939-3180-4ac9-a4b8-4b8779d57d0a
Diffstat (limited to 'rMD-exp/src/recordmydesktop.c')
-rw-r--r-- | rMD-exp/src/recordmydesktop.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/rMD-exp/src/recordmydesktop.c b/rMD-exp/src/recordmydesktop.c index c6b059a..24037ce 100644 --- a/rMD-exp/src/recordmydesktop.c +++ b/rMD-exp/src/recordmydesktop.c @@ -208,6 +208,8 @@ int main(int argc,char **argv){ pthread_join(image_capture_t,NULL); fprintf(stderr,"Shutting down."); + //if no damage events have been received the thread will get stuck + pthread_cond_broadcast(&pdata.image_buffer_ready); if(pdata.args.encOnTheFly) pthread_join(image_encode_t,NULL); else @@ -257,7 +259,10 @@ int main(int argc,char **argv){ shmctl (shminfo.shmid, IPC_RMID, 0); } fprintf(stderr,"\n"); - XCloseDisplay(pdata.dpy); + + if(pdata.args.full_shots || inserts!=1)//otherwise it will hang + XCloseDisplay(pdata.dpy); + /** Encoding */ |