diff -Naur avrdude-5.10-pristine/ser_posix.c avrdude-5.10/ser_posix.c
--- avrdude-5.10-pristine/ser_posix.c	2010-01-19 03:39:11.000000000 -0700
+++ avrdude-5.10/ser_posix.c	2011-07-16 02:40:26.048441518 -0600
@@ -230,13 +230,13 @@
   }
 
   if (is_on) {
-    /* Clear DTR and RTS */
-    ctl &= ~(TIOCM_DTR | TIOCM_RTS);
-  }
-  else {
     /* Set DTR and RTS */
     ctl |= (TIOCM_DTR | TIOCM_RTS);
   }
+  else {
+    /* Clear DTR and RTS */
+    ctl &= ~(TIOCM_DTR | TIOCM_RTS);
+  }
 
   r = ioctl(fdp->ifd, TIOCMSET, &ctl);
   if (r < 0) {
