]> git.sesse.net Git - vlc/blobdiff - src/misc/mtime.c
Maemo: work-around segmentation fault when poll() unwinds
[vlc] / src / misc / mtime.c
index 4d8a9da725b78780d60e954b8484a17fb05d354e..b85c7ef0e3cedca38b14d43142615b18a97f1fa4 100644 (file)
@@ -125,8 +125,15 @@ char *mstrtime( char *psz_buffer, mtime_t date )
  * \param psz_buffer should be a buffer at least MSTRTIME_MAX_SIZE characters
  * \return psz_buffer is returned so this can be used as printf parameter.
  */
-char *secstotimestr( char *psz_buffer, int i_seconds )
+char *secstotimestr( char *psz_buffer, int32_t i_seconds )
 {
+    if( unlikely(i_seconds < 0) )
+    {
+        secstotimestr( psz_buffer + 1, -i_seconds );
+        *psz_buffer = '-';
+        return psz_buffer;
+    }
+
     div_t d;
 
     d = div( i_seconds, 60 );
@@ -137,8 +144,8 @@ char *secstotimestr( char *psz_buffer, int i_seconds )
         snprintf( psz_buffer, MSTRTIME_MAX_SIZE, "%u:%02u:%02u",
                  d.quot, d.rem, i_seconds );
     else
-         snprintf( psz_buffer, MSTRTIME_MAX_SIZE, "%02u:%02u",
-                   d.rem, i_seconds );
+        snprintf( psz_buffer, MSTRTIME_MAX_SIZE, "%02u:%02u",
+                  d.rem, i_seconds );
     return psz_buffer;
 }