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 <[EMAIL PROTECTED]> +## DP: fix segfault when dvdauth chapter list empty + [EMAIL PROTECTED]@ +--- 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 <[EMAIL PROTECTED]> +## DP: fix avi.h packed attribute for gcc-4.0 + [EMAIL PROTECTED]@ +--- 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 <[EMAIL PROTECTED]> +## DP: fix segfault when no multiplex tool is set + [EMAIL PROTECTED]@ +--- 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 <[EMAIL PROTECTED]> +## DP: fix unused variable on bigendian arch + [EMAIL PROTECTED]@ +--- 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; ================================================================ _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit