* darwin_specific.[ch]: added strndup needed by video_output.c.
[vlc.git] / src / misc / darwin_specific.c
index 927cda6..baf214a 100644 (file)
@@ -2,7 +2,7 @@
  * darwin_specific.c: Darwin specific features 
  *****************************************************************************
  * Copyright (C) 2001 VideoLAN
- * $Id: darwin_specific.c,v 1.12 2002/06/02 14:26:16 gbazin Exp $
+ * $Id: darwin_specific.c,v 1.13 2002/07/02 22:07:02 jlj Exp $
  *
  * Authors: Samuel Hocevar <sam@zoy.org>
  *
@@ -60,7 +60,7 @@ void system_Init( vlc_t *p_this, int *pi_argc, char *ppsz_argv[] )
         param.sched_priority = 10;
         if (pthread_setschedparam(pthread_self(), SCHED_RR, &param))  
         {
-            intf_ErrMsg("pthread_setschedparam failed");
+            msg_Err( p_this, "pthread_setschedparam failed" );
         }
     }
 }
@@ -89,3 +89,23 @@ char * system_GetProgramPath( void )
     return( psz_program_path );
 }
 
+/*****************************************************************************
+ * strndup: returns a malloc'd copy of at most n bytes of string 
+ * Does anyone know whether or not it will be present in Jaguar?
+ *****************************************************************************/
+char *strndup( const char *string, size_t n )
+{
+    char *psz;
+    size_t len;
+
+    len = __MIN( strlen( string ), n ); 
+    psz = (char*)malloc( len + 1 );
+
+    if( psz != NULL )
+    {
+        memcpy( (void*)psz, (const void*)string, len );
+        psz[ len ] = 0;
+    }
+
+    return( psz );
+}