[vlc-commits] gui/macos: bookmarks: add support for fractional seconds

Filip Roséen git at videolan.org
Thu May 18 21:08:54 CEST 2017


vlc | branch: master | Filip Roséen <filip at atch.se> | Thu May 18 12:29:49 2017 +0200| [24635dd18c21e2a521f468ddc7c7740985803de4] | committer: Jean-Baptiste Kempf

gui/macos: bookmarks: add support for fractional seconds

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=24635dd18c21e2a521f468ddc7c7740985803de4
---

 modules/gui/macosx/VLCBookmarksWindowController.m | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/modules/gui/macosx/VLCBookmarksWindowController.m b/modules/gui/macosx/VLCBookmarksWindowController.m
index a5660dc9ef..a90102ecd9 100644
--- a/modules/gui/macosx/VLCBookmarksWindowController.m
+++ b/modules/gui/macosx/VLCBookmarksWindowController.m
@@ -176,11 +176,11 @@
     }
 
     [_editNameTextField setStringValue: toNSStr(pp_bookmarks[row]->psz_name)];
-    int total = pp_bookmarks[row]->i_time_offset/ 1000000;
-    int hour = total / (60*60);
-    int min = (total - hour*60*60) / 60;
-    int sec = total - hour*60*60 - min*60;
-    [_editTimeTextField setStringValue: [NSString stringWithFormat:@"%02d:%02d:%02d", hour, min, sec]];
+    mtime_t total = pp_bookmarks[i]->i_time_offset;
+    unsigned hour = ( total / ( CLOCK_FREQ * 3600 ) );
+    unsigned min = ( total % ( CLOCK_FREQ * 3600 ) ) / ( CLOCK_FREQ * 60 );
+    float    sec = ( total % ( CLOCK_FREQ * 60 ) ) / ( CLOCK_FREQ * 1. );
+    [_editTimeTextField setStringValue: [NSString stringWithFormat:@"%02d:%02d:%06.3f", hour, min, sec]];
 
     /* Just keep the pointer value to check if it
      * changes. Note, we don't need to keep a reference to the object.
@@ -234,11 +234,11 @@
     NSArray * components = [[_editTimeTextField stringValue] componentsSeparatedByString:@":"];
     NSUInteger componentCount = [components count];
     if (componentCount == 1)
-        pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components firstObject] longLongValue]);
+        pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components firstObject] floatValue]);
     else if (componentCount == 2)
         pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components firstObject] longLongValue] * 60 + [[components objectAtIndex:1] longLongValue]);
     else if (componentCount == 3)
-        pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components firstObject] longLongValue] * 3600 + [[components objectAtIndex:1] longLongValue] * 60 + [[components objectAtIndex:2] longLongValue]);
+        pp_bookmarks[i]->i_time_offset = 1000000LL * ([[components firstObject] longLongValue] * 3600 + [[components objectAtIndex:1] longLongValue] * 60 + [[components objectAtIndex:2] floatValue]);
     else {
         msg_Err(getIntf(), "Invalid string format for time");
         goto clear;



More information about the vlc-commits mailing list