SOURCES: kino-segfault_empty_chapter.patch (NEW), kino-fix_avi_pac...
glen
glen at pld-linux.org
Sun May 21 14:21:10 CEST 2006
Author: glen Date: Sun May 21 12:21:10 2006 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- fixes from debian
---- Files affected:
SOURCES:
kino-segfault_empty_chapter.patch (NONE -> 1.1) (NEW), kino-fix_avi_packing.patch (NONE -> 1.1) (NEW), kino-fix_no_mplex.patch (NONE -> 1.1) (NEW), kino-fix_bigendian_warning.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/kino-segfault_empty_chapter.patch
diff -u /dev/null SOURCES/kino-segfault_empty_chapter.patch:1.1
--- /dev/null Sun May 21 14:21:10 2006
+++ SOURCES/kino-segfault_empty_chapter.patch Sun May 21 14:21:04 2006
@@ -0,0 +1,27 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## Paul Brossier <piem at debian.org>
+## DP: fix segfault when dvdauth chapter list empty
+
+ at DPATCH@
+--- kino-0.76.orig/src/page_export_mjpeg.cc
++++ kino-0.76/src/page_export_mjpeg.cc
+@@ -472,8 +472,10 @@
+ {
+ std::string tmpSceneStr;
+ tmpSceneStr = this->common->getTime().parseFramesToString( *sceneIter, SMIL::Time::TIME_FORMAT_SMPTE );
++ if (tmpSceneStr.length() > 9)
+ chapterList << "," << tmpSceneStr.substr( 1, 7 ) << "." << std::setw( 2 ) << std::setfill( '0' ) <<
+ static_cast< int >( atof( tmpSceneStr.substr( 9, 2 ).c_str() ) / ( isPal ? 25 : 29.97 ) * 100 );
++ else goto endchapter;
+ }
+
+ /* output the single vob, checking for chapter marks */
+@@ -481,6 +483,8 @@
+ chapterList.str() << "\" pause=\"0\" />" << std::endl;
+ }
+
++endchapter:
++
+ xml << "\t\t\t</pgc>" << std::endl;
+ xml << "\t\t</titles>" << std::endl;
+ xml << "\t</titleset>" <<std::endl;
================================================================
Index: SOURCES/kino-fix_avi_packing.patch
diff -u /dev/null SOURCES/kino-fix_avi_packing.patch:1.1
--- /dev/null Sun May 21 14:21:10 2006
+++ SOURCES/kino-fix_avi_packing.patch Sun May 21 14:21:04 2006
@@ -0,0 +1,251 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## Paul Brossier <piem at debian.org>
+## DP: fix avi.h packed attribute for gcc-4.0
+
+ at DPATCH@
+--- kino-0.8.0/src/avi.h 2005-10-20 07:28:39.000000000 +0100
++++ kino-0.80/src/avi.h 2005-11-28 18:57:02.782807000 +0000
+@@ -31,7 +31,7 @@
+ #include "riff.h"
+ #include "frame.h"
+
+-#define PACKED(x) __attribute__((packed)) x
++#define PACKED(x) x __attribute__((packed))
+
+ #define AVI_SMALL_INDEX (0x01)
+ #define AVI_LARGE_INDEX (0x02)
+@@ -48,35 +48,35 @@
+ typedef struct
+ {
+ /// frame display rate (or 0L)
+- DWORD dwMicroSecPerFrame;
++ DWORD PACKED(dwMicroSecPerFrame);
+
+ /// max. transfer rate
+- DWORD dwMaxBytesPerSec;
++ DWORD PACKED(dwMaxBytesPerSec);
+
+ /// pad to multiples of this size, normally 2K
+- DWORD dwPaddingGranularity;
++ DWORD PACKED(dwPaddingGranularity);
+
+ /// the ever-present flags
+- DWORD dwFlags;
++ DWORD PACKED(dwFlags);
+
+ /// # frames in file
+- DWORD dwTotalFrames;
+- DWORD dwInitialFrames;
+- DWORD dwStreams;
+- DWORD dwSuggestedBufferSize;
++ DWORD PACKED(dwTotalFrames);
++ DWORD PACKED(dwInitialFrames);
++ DWORD PACKED(dwStreams);
++ DWORD PACKED(dwSuggestedBufferSize);
+
+- DWORD dwWidth;
+- DWORD dwHeight;
++ DWORD PACKED(dwWidth);
++ DWORD PACKED(dwHeight);
+
+- DWORD dwReserved[ 4 ];
++ DWORD PACKED(dwReserved[ 4 ]);
+ }
+-PACKED(MainAVIHeader);
++MainAVIHeader;
+
+ typedef struct
+ {
+- WORD top, bottom, left, right;
++ WORD PACKED(top), PACKED(bottom), PACKED(left), PACKED(right);
+ }
+-PACKED(RECT);
++RECT;
+
+ /** Declaration of a stream header
+
+@@ -84,113 +84,113 @@
+
+ typedef struct
+ {
+- FOURCC fccType;
+- FOURCC fccHandler;
+- DWORD dwFlags; /* Contains AVITF_* flags */
+- WORD wPriority;
+- WORD wLanguage;
+- DWORD dwInitialFrames;
+- DWORD dwScale;
+- DWORD dwRate; /* dwRate / dwScale == samples/second */
+- DWORD dwStart;
+- DWORD dwLength; /* In units above... */
+- DWORD dwSuggestedBufferSize;
+- DWORD dwQuality;
+- DWORD dwSampleSize;
+- RECT rcFrame;
++ FOURCC PACKED(fccType);
++ FOURCC PACKED(fccHandler);
++ DWORD PACKED(dwFlags); /* Contains AVITF_* flags */
++ WORD PACKED(wPriority);
++ WORD PACKED(wLanguage);
++ DWORD PACKED(dwInitialFrames);
++ DWORD PACKED(dwScale);
++ DWORD PACKED(dwRate); /* dwRate / dwScale == samples/second */
++ DWORD PACKED(dwStart);
++ DWORD PACKED(dwLength); /* In units above... */
++ DWORD PACKED(dwSuggestedBufferSize);
++ DWORD PACKED(dwQuality);
++ DWORD PACKED(dwSampleSize);
++ RECT PACKED(rcFrame);
+ }
+-PACKED(AVIStreamHeader);
++AVIStreamHeader;
+
+ typedef struct
+ {
+- DWORD dwDVAAuxSrc;
+- DWORD dwDVAAuxCtl;
+- DWORD dwDVAAuxSrc1;
+- DWORD dwDVAAuxCtl1;
+- DWORD dwDVVAuxSrc;
+- DWORD dwDVVAuxCtl;
+- DWORD dwDVReserved[ 2 ];
++ DWORD PACKED(dwDVAAuxSrc);
++ DWORD PACKED(dwDVAAuxCtl);
++ DWORD PACKED(dwDVAAuxSrc1);
++ DWORD PACKED(dwDVAAuxCtl1);
++ DWORD PACKED(dwDVVAuxSrc);
++ DWORD PACKED(dwDVVAuxCtl);
++ DWORD PACKED(dwDVReserved[ 2 ]);
+ }
+-PACKED(DVINFO);
++DVINFO;
+
+ typedef struct
+ {
+- DWORD biSize;
+- LONG biWidth;
+- LONG biHeight;
+- WORD biPlanes;
+- WORD biBitCount;
+- DWORD biCompression;
+- DWORD biSizeImage;
+- LONG biXPelsPerMeter;
+- LONG biYPelsPerMeter;
+- DWORD biClrUsed;
+- DWORD biClrImportant;
++ DWORD PACKED(biSize);
++ LONG PACKED(biWidth);
++ LONG PACKED(biHeight);
++ WORD PACKED(biPlanes);
++ WORD PACKED(biBitCount);
++ DWORD PACKED(biCompression);
++ DWORD PACKED(biSizeImage);
++ LONG PACKED(biXPelsPerMeter);
++ LONG PACKED(biYPelsPerMeter);
++ DWORD PACKED(biClrUsed);
++ DWORD PACKED(biClrImportant);
+ }
+-PACKED(BITMAPINFOHEADER);
++BITMAPINFOHEADER;
+
+ typedef struct
+ {
+- WORD wFormatTag;
+- WORD nChannels;
+- DWORD nSamplesPerSec;
+- DWORD nAvgBytesPerSec;
+- WORD nBlockAlign;
+- WORD wBitsPerSample;
+- WORD cbSize;
+- WORD dummy;
++ WORD PACKED(wFormatTag);
++ WORD PACKED(nChannels);
++ DWORD PACKED(nSamplesPerSec);
++ DWORD PACKED(nAvgBytesPerSec);
++ WORD PACKED(nBlockAlign);
++ WORD PACKED(wBitsPerSample);
++ WORD PACKED(cbSize);
++ WORD PACKED(dummy);
+ }
+-PACKED(WAVEFORMATEX);
++WAVEFORMATEX;
+
+ typedef struct
+ {
+- WORD wLongsPerEntry;
+- BYTE bIndexSubType;
+- BYTE bIndexType;
+- DWORD nEntriesInUse;
+- FOURCC dwChunkId;
+- DWORD dwReserved[ 3 ];
++ WORD PACKED(wLongsPerEntry);
++ BYTE PACKED(bIndexSubType);
++ BYTE PACKED(bIndexType);
++ DWORD PACKED(nEntriesInUse);
++ FOURCC PACKED(dwChunkId);
++ DWORD PACKED(dwReserved[ 3 ]);
+ struct avisuperindex_entry
+ {
+- QUADWORD qwOffset;
+- DWORD dwSize;
+- DWORD dwDuration;
++ QUADWORD PACKED(qwOffset);
++ DWORD PACKED(dwSize);
++ DWORD PACKED(dwDuration);
+ }
+ aIndex[ 2014 ];
+ }
+-PACKED(AVISuperIndex);
++AVISuperIndex;
+
+ typedef struct
+ {
+- WORD wLongsPerEntry;
+- BYTE bIndexSubType;
+- BYTE bIndexType;
+- DWORD nEntriesInUse;
+- FOURCC dwChunkId;
+- QUADWORD qwBaseOffset;
+- DWORD dwReserved;
++ WORD PACKED(wLongsPerEntry);
++ BYTE PACKED(bIndexSubType);
++ BYTE PACKED(bIndexType);
++ DWORD PACKED(nEntriesInUse);
++ FOURCC PACKED(dwChunkId);
++ QUADWORD PACKED(qwBaseOffset);
++ DWORD PACKED(dwReserved);
+ struct avifieldindex_entry
+ {
+- DWORD dwOffset;
+- DWORD dwSize;
++ DWORD PACKED(dwOffset);
++ DWORD PACKED(dwSize);
+ }
+- aIndex[ 17895 ];
++ aIndex[ 4028 ];
+ }
+-PACKED(AVIStdIndex);
++AVIStdIndex;
+
+ typedef struct
+ {
+ struct avisimpleindex_entry
+ {
+- FOURCC dwChunkId;
+- DWORD dwFlags;
+- DWORD dwOffset;
+- DWORD dwSize;
++ FOURCC PACKED(dwChunkId);
++ DWORD PACKED(dwFlags);
++ DWORD PACKED(dwOffset);
++ DWORD PACKED(dwSize);
+ }
+ aIndex[ 20000 ];
+- DWORD nEntriesInUse;
++ DWORD PACKED(nEntriesInUse);
+ }
+-PACKED(AVISimpleIndex);
++AVISimpleIndex;
+
+ typedef struct
+ {
================================================================
Index: SOURCES/kino-fix_no_mplex.patch
diff -u /dev/null SOURCES/kino-fix_no_mplex.patch:1.1
--- /dev/null Sun May 21 14:21:10 2006
+++ SOURCES/kino-fix_no_mplex.patch Sun May 21 14:21:04 2006
@@ -0,0 +1,19 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## Paul Brossier <piem at debian.org>
+## DP: fix segfault when no multiplex tool is set
+
+ at DPATCH@
+--- kino-0.7.6/src/page_export_mjpeg.cc 2005-04-02 00:02:00.000000000 +0100
++++ kino-0.76/src/page_export_mjpeg.cc 2005-07-21 17:33:26.000000000 +0100
+@@ -277,7 +277,10 @@
+ gchar *full;
+ char sceneString[ 20 ];
+ int sceneEnd = end;
+- bool userMplexSplit = ( strstr( multiplex, "-S" ) || strstr( multiplex, "--max-segment-size" ) );
++ bool userMplexSplit = 0;
++ if ( multiplex != NULL && strcmp( multiplex, "" ) )
++ userMplexSplit = (strstr( multiplex, "-S" )
++ || strstr( multiplex, "--max-segment-size" ));
+
+ // Determine if we need to split by scene or not
+ // when splitting: Output is generated as fileNNN_MMM.mpeg where NNN is the
================================================================
Index: SOURCES/kino-fix_bigendian_warning.patch
diff -u /dev/null SOURCES/kino-fix_bigendian_warning.patch:1.1
--- /dev/null Sun May 21 14:21:10 2006
+++ SOURCES/kino-fix_bigendian_warning.patch Sun May 21 14:21:05 2006
@@ -0,0 +1,18 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## Paul Brossier <piem at debian.org>
+## DP: fix unused variable on bigendian arch
+
+ at DPATCH@
+--- kino-0.76.orig/src/page_export_avi.cc
++++ kino-0.76/src/page_export_avi.cc
+@@ -213,8 +213,10 @@
+ time_t datetime = time( NULL );
+ int frameNum = 0;
+ int i;
++#if BYTE_ORDER == LITTLE_ENDIAN
+ bool resample = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(
+ lookup_widget( common->getWidget(), "checkbutton_export_avi_resample" ) ) );
++#endif
+ int16_t *audio_buffers[ 4 ];
+ AudioInfo info;
+ AudioResample<int16_ne_t,int16_le_t> *resampler = NULL;
================================================================
More information about the pld-cvs-commit
mailing list