File tree 1 file changed +13
-4
lines changed
1 file changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -371,11 +371,13 @@ impl<'tmp> TempProject<'tmp> {
371
371
package_name : & str ,
372
372
version_to_latest : bool ,
373
373
) -> CargoResult < ( ) > {
374
- let dep_names: Vec < _ > = dependencies. keys ( ) . cloned ( ) . collect ( ) ;
375
- for name in dep_names {
376
- let original = dependencies. get ( & name) . cloned ( ) . unwrap ( ) ;
374
+ let dep_keys: Vec < _ > = dependencies. keys ( ) . cloned ( ) . collect ( ) ;
375
+ for dep_key in dep_keys {
376
+ let original = dependencies. get ( & dep_key) . cloned ( ) . unwrap ( ) ;
377
+
377
378
match original {
378
379
Value :: String ( requirement) => {
380
+ let name = dep_key;
379
381
if version_to_latest {
380
382
dependencies. insert (
381
383
name. clone ( ) ,
@@ -394,6 +396,13 @@ impl<'tmp> TempProject<'tmp> {
394
396
}
395
397
}
396
398
Value :: Table ( ref t) => {
399
+ let name = match t. get ( "package" ) {
400
+ Some ( & Value :: String ( ref s) ) => s,
401
+ // TODO: Probably this should emit an error?
402
+ Some ( _) => & dep_key,
403
+ None => & dep_key,
404
+ } ;
405
+
397
406
if !( version_to_latest || t. contains_key ( "features" ) ) {
398
407
continue ;
399
408
}
@@ -463,7 +472,7 @@ impl<'tmp> TempProject<'tmp> {
463
472
}
464
473
dependencies. insert ( name. clone ( ) , Value :: Table ( replaced) ) ;
465
474
}
466
- _ => panic ! ( "Dependency spec is neither a string nor a table {}" , name ) ,
475
+ _ => panic ! ( "Dependency spec is neither a string nor a table {}" , dep_key ) ,
467
476
}
468
477
}
469
478
Ok ( ( ) )
You can’t perform that action at this time.
0 commit comments