Changeset 10149
- Timestamp:
- 08/12/07 17:04:02 (16 months ago)
- Files:
-
- 1 modified
-
dojo/trunk/_base/_loader/loader.js (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
dojo/trunk/_base/_loader/loader.js
r10022 r10149 356 356 357 357 //Make sure we have a string. 358 var fullPkgName = String(packageName);358 var fullPkgName = packageName+""; 359 359 var strippedPkgName = fullPkgName; 360 360 … … 530 530 531 531 // Safari doesn't support this.constructor so we have to be explicit 532 // FIXME: Tracked (and fixed) in Webkit bug 3537. 533 // http://bugs.webkit.org/show_bug.cgi?id=3537 532 534 var relobj = new dojo._Url(_a[i]+""); 533 535 var uriobj = new dojo._Url(uri+""); … … 539 541 (!relobj.query) 540 542 ){ 541 if(relobj.fragment != n ull){543 if(relobj.fragment != n){ 542 544 uriobj.fragment = relobj.fragment; 543 545 } 544 546 relobj = uriobj; 545 }else if( relobj.scheme == null){547 }else if(!relobj.scheme){ 546 548 relobj.scheme = uriobj.scheme; 547 549 548 if( relobj.authority == null){550 if(!relobj.authority){ 549 551 relobj.authority = uriobj.authority; 550 552 … … 556 558 for(var j = 0; j < segs.length; j++){ 557 559 if(segs[j] == "."){ 558 if (j == segs.length - 1) { segs[j] = ""; } 559 else { segs.splice(j, 1); j--; } 560 if(j == segs.length - 1){ 561 segs[j] = ""; 562 }else{ 563 segs.splice(j, 1); 564 j--; 565 } 560 566 }else if(j > 0 && !(j == 1 && segs[0] == "") && 561 567 segs[j] == ".." && segs[j-1] != ".."){ 562 568 563 569 if(j == (segs.length - 1)){ 564 segs.splice(j, 1); segs[j - 1] = ""; 570 segs.splice(j, 1); 571 segs[j - 1] = ""; 565 572 }else{ 566 segs.splice(j - 1, 2); j -= 2; 573 segs.splice(j - 1, 2); 574 j -= 2; 567 575 } 568 576 } … … 574 582 575 583 uri = ""; 576 if(relobj.scheme != null){584 if(relobj.scheme){ 577 585 uri += relobj.scheme + ":"; 578 586 } 579 if(relobj.authority != null){587 if(relobj.authority){ 580 588 uri += "//" + relobj.authority; 581 589 } 582 590 uri += relobj.path; 583 if(relobj.query != null){591 if(relobj.query){ 584 592 uri += "?" + relobj.query; 585 593 } 586 if(relobj.fragment != null){594 if(relobj.fragment){ 587 595 uri += "#" + relobj.fragment; 588 596 } … … 594 602 var r = this.uri.match(ore); 595 603 596 this.scheme = r[2] || (r[1] ? "" : n ull);597 this.authority = r[4] || (r[3] ? "" : n ull);604 this.scheme = r[2] || (r[1] ? "" : n); 605 this.authority = r[4] || (r[3] ? "" : n); 598 606 this.path = r[5]; // can never be undefined 599 this.query = r[7] || (r[6] ? "" : n ull);600 this.fragment = r[9] || (r[8] ? "" : n ull);601 602 if(this.authority != n ull){607 this.query = r[7] || (r[6] ? "" : n); 608 this.fragment = r[9] || (r[8] ? "" : n); 609 610 if(this.authority != n){ 603 611 // server based naming authority 604 612 r = this.authority.match(ire); 605 613 606 this.user = r[3] || n ull;607 this.password = r[4] || n ull;614 this.user = r[3] || n; 615 this.password = r[4] || n; 608 616 this.host = r[5]; 609 this.port = r[7] || n ull;617 this.port = r[7] || n; 610 618 } 611 619 }