summaryrefslogtreecommitdiff
path: root/MobileCydia.mm
diff options
context:
space:
mode:
Diffstat (limited to 'MobileCydia.mm')
-rw-r--r--MobileCydia.mm5
1 files changed, 3 insertions, 2 deletions
diff --git a/MobileCydia.mm b/MobileCydia.mm
index 1596c38..2e7abad 100644
--- a/MobileCydia.mm
+++ b/MobileCydia.mm
@@ -8745,9 +8745,10 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) {
CYViewController *controller = nil;
if ([base isEqualToString:@"url"]) {
+ // This kind of URL can contain slashes in the argument, so we can't parse them below.
+ NSString *destination = [[url absoluteString] substringFromIndex:([scheme length] + [@"://" length] + [base length] + [@"/" length])];
controller = [[[CYBrowserController alloc] init] autorelease];
- NSArray *arguments([components subarrayWithRange:NSMakeRange(1, [components count] - 1)]);
- [(CYBrowserController *)controller loadURL:[NSURL URLWithString:[arguments componentsJoinedByString:@""]]];
+ [(CYBrowserController *)controller loadURL:[NSURL URLWithString:destination]];
} else if ([components count] == 1) {
if ([base isEqualToString:@"storage"]) {
controller = [[[CYBrowserController alloc] init] autorelease];