Skip to content

Commit b7bf94f

Browse files
dnicolsonfkuehne
authored andcommitted
Add URL validation for network streams
1 parent a1ef05d commit b7bf94f

File tree

2 files changed

+18
-12
lines changed

2 files changed

+18
-12
lines changed

Apple-TV/VLCOpenNetworkStreamTVViewController.m

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,9 @@ - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
146146
- (void)URLEnteredInField:(id)sender
147147
{
148148
NSString *urlString = self.playURLField.text;
149-
if (urlString.length) {
149+
NSURL *url = [NSURL URLWithString:urlString];
150+
151+
if (url && url.scheme && url.host) {
150152
if ([_recentURLs indexOfObject:urlString] != NSNotFound)
151153
[_recentURLs removeObject:urlString];
152154

Sources/VLCOpenNetworkStreamViewController.m

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -252,19 +252,23 @@ - (IBAction)openButtonAction:(id)sender
252252
}
253253
if (!self.privateToggleButton.selected) {
254254
NSString *urlString = self.urlField.text;
255-
if ([_recentURLs indexOfObject:urlString] != NSNotFound)
256-
[_recentURLs removeObject:urlString];
255+
NSURL *url = [NSURL URLWithString:urlString];
256+
257+
if (url && url.scheme && url.host) {
258+
if ([_recentURLs indexOfObject:urlString] != NSNotFound)
259+
[_recentURLs removeObject:urlString];
260+
261+
if (_recentURLs.count >= 100)
262+
[_recentURLs removeLastObject];
263+
[_recentURLs addObject:urlString];
264+
if ([self ubiquitousKeyStoreAvailable]) {
265+
[[NSUbiquitousKeyValueStore defaultStore] setArray:_recentURLs forKey:kVLCRecentURLs];
266+
} else {
267+
[[NSUserDefaults standardUserDefaults] setObject:_recentURLs forKey:kVLCRecentURLs];
268+
}
257269

258-
if (_recentURLs.count >= 100)
259-
[_recentURLs removeLastObject];
260-
[_recentURLs addObject:urlString];
261-
if ([self ubiquitousKeyStoreAvailable]) {
262-
[[NSUbiquitousKeyValueStore defaultStore] setArray:_recentURLs forKey:kVLCRecentURLs];
263-
} else {
264-
[[NSUserDefaults standardUserDefaults] setObject:_recentURLs forKey:kVLCRecentURLs];
270+
[self.historyTableView reloadData];
265271
}
266-
267-
[self.historyTableView reloadData];
268272
}
269273
[self.urlField resignFirstResponder];
270274
[self _openURLStringAndDismiss:self.urlField.text];

0 commit comments

Comments
 (0)