]> git.sesse.net Git - vlc/blobdiff - src/extras/libc.c
- since DIR* on win32 is mapped to a private data type, rewinddir(), seekdir() and...
[vlc] / src / extras / libc.c
index 79a6dd0867afe64bfa500f24033d35c26c2f5972..d7ccda6b60a1f727d761ca3c3a0fb5412e687ac7 100644 (file)
@@ -55,6 +55,9 @@
 #   undef _wopendir
 #   undef _wreaddir
 #   undef _wclosedir
+#   undef rewinddir
+#   undef seekdir
+#   undef telldir
 #   define WIN32_LEAN_AND_MEAN
 #   include <windows.h>
 #endif
@@ -483,6 +486,31 @@ int vlc_wclosedir( void *_p_dir )
     free( p_dir );
     return i_ret;
 }
+
+void vlc_rewinddir( void *_p_dir )
+{
+    vlc_DIR *p_dir = (vlc_DIR *)_p_dir;
+
+    if ( p_dir->p_real_dir != NULL )
+        _wrewinddir( p_dir->p_real_dir );
+}
+
+void vlc_seekdir( void *_p_dir, long loc)
+{
+    vlc_DIR *p_dir = (vlc_DIR *)_p_dir;
+
+    if ( p_dir->p_real_dir != NULL )
+        _wseekdir( p_dir->p_real_dir, loc );
+}
+
+long vlc_telldir( void *_p_dir )
+{
+    vlc_DIR *p_dir = (vlc_DIR *)_p_dir;
+
+    if ( p_dir->p_real_dir != NULL )
+        return _wtelldir( p_dir->p_real_dir );
+    return 0;
+}
 #endif
 
 /*****************************************************************************