Browse Source

macosx: fix int overflow when editing bookmarks

This caused incorrect values for larger bookmarks.
pull/24/head
David Fuhrmann 12 years ago
parent
commit
7cf1d8017a
  1. 6
      modules/gui/macosx/bookmarks.m

6
modules/gui/macosx/bookmarks.m

@ -253,11 +253,11 @@ static VLCBookmarks *_o_sharedInstance = nil;
NSArray * components = [[o_edit_fld_time stringValue] componentsSeparatedByString:@":"];
NSUInteger componentCount = [components count];
if (componentCount == 1)
pp_bookmarks[i]->i_time_offset = 1000000 * ([[components objectAtIndex:0] intValue]);
pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components objectAtIndex:0] longLongValue]);
else if (componentCount == 2)
pp_bookmarks[i]->i_time_offset = 1000000 * ([[components objectAtIndex:0] intValue] * 60 + [[components objectAtIndex:1] intValue]);
pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components objectAtIndex:0] longLongValue] * 60 + [[components objectAtIndex:1] longLongValue]);
else if (componentCount == 3)
pp_bookmarks[i]->i_time_offset = 1000000 * ([[components objectAtIndex:0] intValue] * 3600 + [[components objectAtIndex:1] intValue] * 60 + [[components objectAtIndex:2] intValue]);
pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components objectAtIndex:0] longLongValue] * 3600 + [[components objectAtIndex:1] longLongValue] * 60 + [[components objectAtIndex:2] longLongValue]);
else {
msg_Err(VLCIntf, "Invalid string format for time");
goto clear;

Loading…
Cancel
Save