File tree 3 files changed +17
-5
lines changed
3 files changed +17
-5
lines changed Original file line number Diff line number Diff line change 1
1
# Changes
2
2
3
+ ## [ 2.1.5] - 2024-04-17
4
+
5
+ * Fix receiver's delivery queue handling
6
+
3
7
## [ 2.1.4] - 2024-04-13
4
8
5
9
* Fix large transfers handling
Original file line number Diff line number Diff line change 1
1
[package ]
2
2
name = " ntex-amqp"
3
- version = " 2.1.4 "
3
+ version = " 2.1.5 "
4
4
authors = [
" ntex contributors <[email protected] >" ]
5
5
description = " AMQP 1.0 Client/Server framework"
6
6
documentation = " https://docs.rs/ntex-amqp"
Original file line number Diff line number Diff line change @@ -105,12 +105,22 @@ impl ReceiverLink {
105
105
106
106
/// Check deliveries
107
107
pub fn has_deliveries ( & self ) -> bool {
108
- !self . inner . get_mut ( ) . queue . is_empty ( )
108
+ let inner = self . inner . get_ref ( ) ;
109
+ if inner. partial_body . is_none ( ) {
110
+ !inner. queue . is_empty ( )
111
+ } else {
112
+ inner. queue . len ( ) > 1
113
+ }
109
114
}
110
115
111
116
/// Get delivery
112
117
pub fn get_delivery ( & self ) -> Option < ( Delivery , Transfer ) > {
113
- self . inner . get_mut ( ) . queue . pop_front ( )
118
+ let inner = self . inner . get_mut ( ) ;
119
+ if inner. partial_body . is_none ( ) || inner. queue . len ( ) > 1 {
120
+ inner. queue . pop_front ( )
121
+ } else {
122
+ None
123
+ }
114
124
}
115
125
116
126
/// Send disposition frame
@@ -295,8 +305,6 @@ impl ReceiverLinkInner {
295
305
self . credit -= 1 ;
296
306
}
297
307
298
- println ! ( "============= {:#?}\n {:?}" , transfer, self . partial_body) ;
299
-
300
308
// handle batched transfer
301
309
if let Some ( ref mut body) = self . partial_body {
302
310
if transfer. 0 . delivery_id . is_some ( ) {
You can’t perform that action at this time.
0 commit comments