[libdvdnav-devel] [PATCH 14/33] Deprecate ifoFree_FP_PGC()

beandog at gentoo.org beandog at gentoo.org
Thu Jan 15 21:45:26 CET 2015


From: Steve Dibb <steve.dibb at gmail.com>

---
 src/dvdread/ifo_read.h |  2 +-
 src/ifo_read.c         | 20 +++++++++++++-------
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/src/dvdread/ifo_read.h b/src/dvdread/ifo_read.h
index e0e30b7..c19a4d5 100644
--- a/src/dvdread/ifo_read.h
+++ b/src/dvdread/ifo_read.h
@@ -210,7 +210,6 @@ int ifoRead_TXTDT_MGI(ifo_handle_t *);
  * file which was not read in or which does not exist.
  */
 void ifoFree_VTS_PTT_SRPT(ifo_handle_t *);
-void ifoFree_FP_PGC(ifo_handle_t *);
 void ifoFree_PGCIT(ifo_handle_t *);
 void ifoFree_VTS_TMAPT(ifo_handle_t *);
 
@@ -220,6 +219,7 @@ void ifoFree_VTS_TMAPT(ifo_handle_t *);
  * perform no function -- use ifoFree() only.
  */
 void ifoFree_C_ADT(ifo_handle_t *);
+void ifoFree_FP_PGC(ifo_handle_t *);
 void ifoFree_PGCI_UT(ifo_handle_t *);
 void ifoFree_PTL_MAIT(ifo_handle_t *);
 void ifoFree_TITLE_C_ADT(ifo_handle_t *);
diff --git a/src/ifo_read.c b/src/ifo_read.c
index befa046..ac20a24 100644
--- a/src/ifo_read.c
+++ b/src/ifo_read.c
@@ -554,7 +554,18 @@ void ifoClose(ifo_handle_t *ifofile) {
     free(ifofile->tt_srpt);
   }
 
-  ifoFree_FP_PGC(ifofile);
+  if(ifofile->first_play_pgc) {
+    if(ifofile->first_play_pgc->command_tbl) {
+      free(ifofile->first_play_pgc->command_tbl->pre_cmds);
+      free(ifofile->first_play_pgc->command_tbl->post_cmds);
+      free(ifofile->first_play_pgc->command_tbl->cell_cmds);
+      free(ifofile->first_play_pgc->command_tbl);
+    }
+    free(ifofile->first_play_pgc->program_map);
+    free(ifofile->first_play_pgc->cell_playback);
+    free(ifofile->first_play_pgc->cell_position);
+  }
+
   ifoFree_PGCIT(ifofile);
   ifoFree_VTS_PTT_SRPT(ifofile);
   ifoFree_VTS_TMAPT(ifofile);
@@ -1085,12 +1096,7 @@ static void ifoFree_PGC(pgc_t **pgc) {
 }
 
 void ifoFree_FP_PGC(ifo_handle_t *ifofile) {
-  if(!ifofile)
-    return;
-
-  if(ifofile->first_play_pgc) {
-    ifoFree_PGC(&ifofile->first_play_pgc);
-  }
+  return;
 }
 
 
-- 
2.0.4



More information about the libdvdnav-devel mailing list