]> git.sesse.net Git - vlc/blobdiff - modules/access_filter/dump.c
libvlccore: fix AUTO_ADJUST_PTS_DELAY short comment.
[vlc] / modules / access_filter / dump.c
index 214af4a55f7579459d8ef30877762e09150a9878..f6e28f696cbf589d348fd1e8412ccfad83ee17a1 100644 (file)
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
-#include <vlc/vlc.h>
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <vlc_common.h>
+#include <vlc_plugin.h>
 
 #include <assert.h>
 #include <time.h>
@@ -46,18 +51,18 @@ static int  Open (vlc_object_t *);
 static void Close (vlc_object_t *);
 
 vlc_module_begin ();
-    set_shortname (_("Dump"));
-    set_description (_("Dump"));
+    set_shortname (N_("Dump"));
+    set_description (N_("Dump"));
     set_category (CAT_INPUT);
     set_subcategory (SUBCAT_INPUT_ACCESS_FILTER);
     set_capability ("access_filter", 0);
     add_shortcut ("dump");
     set_callbacks (Open, Close);
 
-    add_bool ("dump-force", VLC_FALSE, NULL, FORCE_TEXT,
-              FORCE_LONGTEXT, VLC_FALSE);
+    add_bool ("dump-force", false, NULL, FORCE_TEXT,
+              FORCE_LONGTEXT, false);
     add_integer ("dump-margin", DEFAULT_MARGIN, NULL, MARGIN_TEXT,
-                 MARGIN_LONGTEXT, VLC_FALSE);
+                 MARGIN_LONGTEXT, false);
 vlc_module_end();
 
 static ssize_t Read (access_t *access, uint8_t *buffer, size_t len);
@@ -86,8 +91,8 @@ static int Open (vlc_object_t *obj)
 
     if (!var_CreateGetBool (access, "dump-force"))
     {
-        vlc_bool_t b;
-        if ((access2_Control (src, ACCESS_CAN_FASTSEEK, &b) == 0) && b)
+        bool b;
+        if ((access_Control (src, ACCESS_CAN_FASTSEEK, &b) == 0) && b)
         {
             msg_Dbg (obj, "dump filter useless");
             return VLC_EGENERIC;
@@ -117,7 +122,7 @@ static int Open (vlc_object_t *obj)
     }
     p_sys->tmp_max = ((int64_t)var_CreateGetInteger (access, "dump-margin")) << 20;
 
-    var_AddCallback (access->p_libvlc, "key-pressed", KeyHandler, access);
+    var_AddCallback (access->p_libvlc, "key-action", KeyHandler, access);
 
     return VLC_SUCCESS;
 }
@@ -131,7 +136,7 @@ static void Close (vlc_object_t *obj)
     access_t *access = (access_t *)obj;
     access_sys_t *p_sys = access->p_sys;
 
-    var_DelCallback (access->p_libvlc, "key-pressed", KeyHandler, access);
+    var_DelCallback (access->p_libvlc, "key-action", KeyHandler, access);
 
     if (p_sys->stream != NULL)
         fclose (p_sys->stream);
@@ -240,26 +245,6 @@ static int Seek (access_t *access, int64_t offset)
     return ret;
 }
 
-
-#ifndef HAVE_LOCALTIME_R
-static inline struct tm *localtime_r (const time_t *now, struct tm *res)
-{
-    struct tm *unsafe = localtime (now);
-    /*
-     * This is not thread-safe. Blame your C library.
-     * On Win32 there SHOULD be _localtime_s instead, but of course
-     * Cygwin and Mingw32 don't know about it. You're on your own if you
-     * use this platform.
-     */
-    if (unsafe == NULL)
-        return NULL;
-
-    memcpy (res, unsafe, sizeof (*res));
-    return res;
-}
-#endif
-
-
 static void Trigger (access_t *access)
 {
     access_sys_t *p_sys = access->p_sys;
@@ -282,7 +267,7 @@ static void Trigger (access_t *access)
         // and there is an off-by-one in the following sprintf().
         return;
 
-    const char *home = access->p_libvlc->psz_homedir;
+    const char *home = config_GetHomeDir();
 
     /* Hmm what about the extension?? */
     char filename[strlen (home) + sizeof ("/vlcdump-YYYYYYYYY-MM-DD-HH-MM-SS.ts")];
@@ -343,16 +328,7 @@ static int KeyHandler (vlc_object_t *obj, char const *varname,
     (void)oldval;
     (void)obj;
 
-    for (struct hotkey *key = access->p_libvlc->p_hotkeys;
-         key->psz_action != NULL; key++)
-    {
-        if (key->i_key == newval.i_int)
-        {
-            if (key->i_action == ACTIONID_DUMP)
-                Trigger ((access_t *)data);
-            break;
-        }
-    }
-
+    if (newval.i_int == ACTIONID_DUMP)
+        Trigger (access);
     return VLC_SUCCESS;
 }