File tree Expand file tree Collapse file tree 2 files changed +13
-11
lines changed Expand file tree Collapse file tree 2 files changed +13
-11
lines changed Original file line number Diff line number Diff line change @@ -207,7 +207,7 @@ impl<'a> TopicManager<'a> {
207
207
}
208
208
209
209
/// Enable select topic
210
- pub fn add ( & mut self , topic : & str ) -> Result < ( ) > {
210
+ pub fn add ( & mut self , topic : & str ) -> Result < Option < Topic > > {
211
211
debug ! ( "oma will opt_in: {}" , topic) ;
212
212
213
213
let index = self
@@ -220,11 +220,14 @@ impl<'a> TopicManager<'a> {
220
220
debug ! ( "Enabled: {enabled_names:?}" ) ;
221
221
222
222
if let Some ( index) = index {
223
+ let ic = index. clone ( ) ;
224
+ let icc = index. clone ( ) ;
223
225
if !enabled_names. contains ( & & index. name ) {
224
- self . enabled . push ( index. clone ( ) ) ;
226
+ self . enabled . push ( ic) ;
227
+ return Ok ( Some ( icc) ) ;
228
+ } else {
229
+ return Ok ( None ) ;
225
230
}
226
-
227
- return Ok ( ( ) ) ;
228
231
}
229
232
230
233
debug ! ( "index: {index:?} does not exist" ) ;
Original file line number Diff line number Diff line change @@ -450,8 +450,13 @@ async fn topics_inner(
450
450
. unwrap ( ) ?;
451
451
}
452
452
453
+ let mut enabled_pkgs = vec ! [ ] ;
454
+
453
455
for i in opt_in {
454
- tm. add ( i) ?;
456
+ let Some ( t) = tm. add ( i) ? else {
457
+ continue ;
458
+ } ;
459
+ enabled_pkgs. extend ( t. packages ) ;
455
460
}
456
461
457
462
let mut downgrade_pkgs = vec ! [ ] ;
@@ -460,12 +465,6 @@ async fn topics_inner(
460
465
downgrade_pkgs. extend ( removed_topic. packages ) ;
461
466
}
462
467
463
- let enabled_pkgs = tm
464
- . enabled_topics ( )
465
- . iter ( )
466
- . flat_map ( |x| x. packages . clone ( ) )
467
- . collect :: < Vec < _ > > ( ) ;
468
-
469
468
Ok ( TopicChanged {
470
469
enabled_pkgs,
471
470
downgrade_pkgs,
You can’t perform that action at this time.
0 commit comments