=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/cmd-capture-pane.c,v retrieving revision 1.7 retrieving revision 1.8 diff -c -r1.7 -r1.8 *** src/usr.bin/tmux/cmd-capture-pane.c 2011/03/28 20:17:39 1.7 --- src/usr.bin/tmux/cmd-capture-pane.c 2011/05/08 20:37:04 1.8 *************** *** 1,4 **** ! /* $OpenBSD: cmd-capture-pane.c,v 1.7 2011/03/28 20:17:39 nicm Exp $ */ /* * Copyright (c) 2009 Jonathan Alvarado --- 1,4 ---- ! /* $OpenBSD: cmd-capture-pane.c,v 1.8 2011/05/08 20:37:04 nicm Exp $ */ /* * Copyright (c) 2009 Jonathan Alvarado *************** *** 60,68 **** len = 0; n = args_strtonum(args, 'S', SHRT_MIN, SHRT_MAX, &cause); ! if (cause != NULL) top = gd->hsize; ! else if (n < 0 && (u_int) -n > gd->hsize) top = 0; else top = gd->hsize + n; --- 60,69 ---- len = 0; n = args_strtonum(args, 'S', SHRT_MIN, SHRT_MAX, &cause); ! if (cause != NULL) { top = gd->hsize; ! xfree(cause); ! } else if (n < 0 && (u_int) -n > gd->hsize) top = 0; else top = gd->hsize + n; *************** *** 70,78 **** top = gd->hsize + gd->sy - 1; n = args_strtonum(args, 'E', SHRT_MIN, SHRT_MAX, &cause); ! if (cause != NULL) bottom = gd->hsize + gd->sy - 1; ! else if (n < 0 && (u_int) -n > gd->hsize) bottom = 0; else bottom = gd->hsize + n; --- 71,80 ---- top = gd->hsize + gd->sy - 1; n = args_strtonum(args, 'E', SHRT_MIN, SHRT_MAX, &cause); ! if (cause != NULL) { bottom = gd->hsize + gd->sy - 1; ! xfree(cause); ! } else if (n < 0 && (u_int) -n > gd->hsize) bottom = 0; else bottom = gd->hsize + n;