X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fslide.c;h=06c77689cb30f3d145fabae2c98ebfbf71281a88;hb=82aed0c41cd917fdf9cdb20db788fe9da0662eba;hp=e20d0beea703167c3050e601fb43f4bb73a0a9ea;hpb=c06c4c87aef651f32419c6a63d8291b15bad5cf4;p=sympathy.git diff --git a/src/slide.c b/src/slide.c index e20d0be..06c7768 100644 --- a/src/slide.c +++ b/src/slide.c @@ -10,6 +10,12 @@ static char rcsid[] = "$Id$"; /* * $Log$ + * Revision 1.3 2008/02/14 02:46:44 james + * *** empty log message *** + * + * Revision 1.2 2008/02/14 00:57:58 james + * *** empty log message *** + * * Revision 1.1 2008/02/13 16:57:29 james * *** empty log message *** * @@ -37,9 +43,13 @@ void slide_consume (Slide * s, int n) { s->nbytes -= n; + + if (s->nbytes < 0) + abort (); + memmove (s->slide, s->slide + n, s->nbytes); - if ((s->size > s->target_size) && (s->nbytes <= s->size)) + if ((s->size > s->target_size) && (s->nbytes <= s->target_size)) { s->size = s->target_size; s->slide = realloc (s->slide, s->size);