@@ -465,20 +465,20 @@ fn parse_source(name: ~str, j: &json::Json) -> @Source {
465465
466466 match *j {
467467 json::Object(j) => {
468- let mut url = match j.find_copy (&~"url") {
469- Some(json::String(u)) => u,
468+ let mut url = match j.find (&~"url") {
469+ Some(& json::String(u)) => copy u,
470470 _ => fail ~"needed 'url' field in source"
471471 };
472- let method = match j.find_copy (&~"method") {
473- Some(json::String(u)) => u,
472+ let method = match j.find (&~"method") {
473+ Some(& json::String(u)) => copy u,
474474 _ => assume_source_method(url)
475475 };
476- let key = match j.find_copy (&~"key") {
477- Some(json::String(u)) => Some(u),
476+ let key = match j.find (&~"key") {
477+ Some(& json::String(u)) => Some(copy u),
478478 _ => None
479479 };
480- let keyfp = match j.find_copy (&~"keyfp") {
481- Some(json::String(u)) => Some(u),
480+ let keyfp = match j.find (&~"keyfp") {
481+ Some(& json::String(u)) => Some(copy u),
482482 _ => None
483483 };
484484 if method == ~"file" {
@@ -512,8 +512,8 @@ fn try_parse_sources(filename: &Path, sources: map::HashMap<~str, @Source>) {
512512}
513513
514514fn load_one_source_package(src: @Source, p: &json::Object) {
515- let name = match p.find_copy (&~"name") {
516- Some(json::String(n)) => {
515+ let name = match p.find (&~"name") {
516+ Some(& json::String(n)) => {
517517 if !valid_pkg_name(n) {
518518 warn(~"malformed source json: "
519519 + src.name + ~", '" + n + ~"'"+
@@ -529,47 +529,47 @@ fn load_one_source_package(src: @Source, p: &json::Object) {
529529 }
530530 };
531531
532- let uuid = match p.find_copy (&~"uuid") {
533- Some(json::String(n)) => {
532+ let uuid = match p.find (&~"uuid") {
533+ Some(& json::String(n)) => {
534534 if !is_uuid(n) {
535535 warn(~"malformed source json: "
536536 + src.name + ~", '" + n + ~"'"+
537537 ~" is an invalid uuid");
538538 return;
539539 }
540- n
540+ copy n
541541 }
542542 _ => {
543543 warn(~"malformed source json: " + src.name + ~" (missing uuid)");
544544 return;
545545 }
546546 };
547547
548- let url = match p.find_copy (&~"url") {
549- Some(json::String(n)) => n,
548+ let url = match p.find (&~"url") {
549+ Some(& json::String(n)) => copy n,
550550 _ => {
551551 warn(~"malformed source json: " + src.name + ~" (missing url)");
552552 return;
553553 }
554554 };
555555
556- let method = match p.find_copy (&~"method") {
557- Some(json::String(n)) => n,
556+ let method = match p.find (&~"method") {
557+ Some(& json::String(n)) => copy n,
558558 _ => {
559559 warn(~"malformed source json: "
560560 + src.name + ~" (missing method)");
561561 return;
562562 }
563563 };
564564
565- let reference = match p.find_copy (&~"ref") {
566- Some(json::String(n)) => Some(n),
565+ let reference = match p.find (&~"ref") {
566+ Some(& json::String(n)) => Some(copy n),
567567 _ => None
568568 };
569569
570570 let mut tags = ~[];
571- match p.find_copy (&~"tags") {
572- Some(json::List(js)) => {
571+ match p.find (&~"tags") {
572+ Some(& json::List(js)) => {
573573 for js.each |j| {
574574 match *j {
575575 json::String(ref j) => tags.grow(1u, j),
@@ -580,8 +580,8 @@ fn load_one_source_package(src: @Source, p: &json::Object) {
580580 _ => ()
581581 }
582582
583- let description = match p.find_copy (&~"description") {
584- Some(json::String(n)) => n,
583+ let description = match p.find (&~"description") {
584+ Some(& json::String(n)) => copy n,
585585 _ => {
586586 warn(~"malformed source json: " + src.name
587587 + ~" (missing description)");
0 commit comments