commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r8342 - gnuradio/branches/releases/3.1/usrp/host/lib/l


From: jcorgan
Subject: [Commit-gnuradio] r8342 - gnuradio/branches/releases/3.1/usrp/host/lib/legacy
Date: Fri, 9 May 2008 01:04:20 -0600 (MDT)

Author: jcorgan
Date: 2008-05-09 01:04:20 -0600 (Fri, 09 May 2008)
New Revision: 8342

Modified:
   gnuradio/branches/releases/3.1/usrp/host/lib/legacy/fusb_linux.cc
Log:
Applied fusb portion of changeset r8295 on trunk to release branch.

Modified: gnuradio/branches/releases/3.1/usrp/host/lib/legacy/fusb_linux.cc
===================================================================
--- gnuradio/branches/releases/3.1/usrp/host/lib/legacy/fusb_linux.cc   
2008-05-09 06:48:28 UTC (rev 8341)
+++ gnuradio/branches/releases/3.1/usrp/host/lib/legacy/fusb_linux.cc   
2008-05-09 07:04:20 UTC (rev 8342)
@@ -386,15 +386,7 @@
 {
   if (!d_started)
     return true;
-  
-  d_devhandle->_cancel_pending_rqsts (this);
-  d_devhandle->_reap (false);
 
-
-  usbdevfs_urb *urb;
-  while ((urb = completed_list_get ()) != 0)
-    free_list_add (urb);
-
   if (d_write_work_in_progress){
     free_list_add (d_write_work_in_progress);
     d_write_work_in_progress = 0;
@@ -407,12 +399,20 @@
     d_read_buffer_end = 0;
   }
 
-  if (d_free_list.size () != (unsigned) d_nblocks)
-    fprintf (stderr, "d_free_list.size () = %d, d_nblocks = %d\n",
-            d_free_list.size (), d_nblocks);
-    
-  assert (d_free_list.size () == (unsigned) d_nblocks);
+  d_devhandle->_cancel_pending_rqsts (this);
+  d_devhandle->_reap (false);
 
+  while (1){
+    usbdevfs_urb *urb;
+    while ((urb = completed_list_get ()) != 0)
+      free_list_add (urb);
+
+    if (d_free_list.size () == (unsigned) d_nblocks)
+      break;
+
+    d_devhandle->_reap(true);
+  }
+
   d_started = false;
   return true;
 }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]