diff options
author | Joonas Niilola <juippis@gentoo.org> | 2020-11-15 16:25:08 +0200 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2020-11-15 17:31:20 +0200 |
commit | e7d274b91f7aa7de97951f9f80ee4e1d021b0e55 (patch) | |
tree | 472f2c7a8207940303aa2e5f6839c6dfb8d2d5bd | |
parent | media-video/mplayer: fix SizeViolation issue (diff) | |
download | gentoo-e7d274b91f7aa7de97951f9f80ee4e1d021b0e55.tar.gz gentoo-e7d274b91f7aa7de97951f9f80ee4e1d021b0e55.tar.bz2 gentoo-e7d274b91f7aa7de97951f9f80ee4e1d021b0e55.zip |
media-tv/mythtv: fix SizeViolation issue
Closes: https://bugs.gentoo.org/748195
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r-- | media-tv/mythtv/Manifest | 1 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch | 365 | ||||
-rw-r--r-- | media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild | 5 |
3 files changed, 4 insertions, 367 deletions
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest index 2cd0c5dfd6bb..261a47d69a27 100644 --- a/media-tv/mythtv/Manifest +++ b/media-tv/mythtv/Manifest @@ -1,2 +1,3 @@ +DIST mythtv-30.0_p20190808-cast_constants_to_short.patch 24201 BLAKE2B d76e519666914f6c9a510fb0aec493e361e857f51e56bd7d120657f350b0bf5da329a89eb58c9789f8f030c6d08bfe0171750690b76d8c2add807942aa686d59 SHA512 c2724ad248222ac4190412cf68e54ee0b265fdde128996e68a2e178e6debe0180c23f9c7d1878466f9a5689fab8172370c6b31c90aa9a096fb5919ec6e8960fe DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2 DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch deleted file mode 100644 index 572f4e2b7574..000000000000 --- a/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch +++ /dev/null @@ -1,365 +0,0 @@ ---- a/libs/libmyth/test/test_audioutils/test_audioutils.h -+++ b/libs/libmyth/test/test_audioutils/test_audioutils.h -@@ -204,42 +204,48 @@ class TestAudioUtils: public QObject - arrays1[i] = j; - } - -- uint32_t pattern = 0xbcbcbcbc; -- arrays2[offsetshort-4] = *(short*)&pattern; -- arrays2[offsetshort-3] = *(short*)&pattern; -- arrays2[offsetshort-2] = *(short*)&pattern; -- arrays2[offsetshort-1] = *(short*)&pattern; -- arrayf[offsetfloat-4] = *(float*)&pattern; -- arrayf[offsetfloat-3] = *(float*)&pattern; -- arrayf[offsetfloat-2] = *(float*)&pattern; -- arrayf[offsetfloat-1] = *(float*)&pattern; -- arrays2[SAMPLES+offsetshort+0] = *(short*)&pattern; -- arrays2[SAMPLES+offsetshort+1] = *(short*)&pattern; -- arrays2[SAMPLES+offsetshort+2] = *(short*)&pattern; -- arrays2[SAMPLES+offsetshort+3] = *(short*)&pattern; -- arrayf[SAMPLES+offsetfloat+0] = *(float*)&pattern; -- arrayf[SAMPLES+offsetfloat+1] = *(float*)&pattern; -- arrayf[SAMPLES+offsetfloat+2] = *(float*)&pattern; -- arrayf[SAMPLES+offsetfloat+3] = *(float*)&pattern; -+ const union -+ { -+ uint32_t pattern; -+ short shortpattern; -+ float floatpattern; -+ } pattern = { .pattern = 0xbcbcbcbc }; -+ -+ arrays2[offsetshort-4] = *&pattern.shortpattern; -+ arrays2[offsetshort-3] = *&pattern.shortpattern; -+ arrays2[offsetshort-2] = *&pattern.shortpattern; -+ arrays2[offsetshort-1] = *&pattern.shortpattern; -+ arrayf[offsetfloat-4] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-3] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-2] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-1] = *(float*)&pattern.floatpattern; -+ arrays2[SAMPLES+offsetshort+0] = *&pattern.shortpattern; -+ arrays2[SAMPLES+offsetshort+1] = *&pattern.shortpattern; -+ arrays2[SAMPLES+offsetshort+2] = *&pattern.shortpattern; -+ arrays2[SAMPLES+offsetshort+3] = *&pattern.shortpattern; -+ arrayf[SAMPLES+offsetfloat+0] = *(float*)&pattern.floatpattern; -+ arrayf[SAMPLES+offsetfloat+1] = *(float*)&pattern.floatpattern; -+ arrayf[SAMPLES+offsetfloat+2] = *(float*)&pattern.floatpattern; -+ arrayf[SAMPLES+offsetfloat+3] = *(float*)&pattern.floatpattern; - - // sanity tests - QCOMPARE(SAMPLES*2, SAMPLES * ISIZEOF(arrays1[0])); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern); - QCOMPARE(arrayf+4,&arrayf[4]); - QCOMPARE(arrays2+4,&arrays2[4]); - -@@ -248,22 +254,22 @@ class TestAudioUtils: public QObject - int val2 = AudioOutputUtil::fromFloat(FORMAT_S16, arrays2+offsetshort, arrayf+offsetfloat, SAMPLES * ISIZEOF(float)); - QCOMPARE(val2, SAMPLES * ISIZEOF(short)); - -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern); -- QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern); -+ QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern); - - av_free(arrays1); - av_free(arrays2); -@@ -505,42 +511,48 @@ class TestAudioUtils: public QObject - arrays1[i] = j; - } - -- uint32_t pattern = 0xbcbcbcbc; -- arrays2[offsetuchar-4] = *(uchar*)&pattern; -- arrays2[offsetuchar-3] = *(uchar*)&pattern; -- arrays2[offsetuchar-2] = *(uchar*)&pattern; -- arrays2[offsetuchar-1] = *(uchar*)&pattern; -- arrayf[offsetfloat-4] = *(float*)&pattern; -- arrayf[offsetfloat-3] = *(float*)&pattern; -- arrayf[offsetfloat-2] = *(float*)&pattern; -- arrayf[offsetfloat-1] = *(float*)&pattern; -- arrays2[SIZEARRAY+offsetuchar+0] = *(uchar*)&pattern; -- arrays2[SIZEARRAY+offsetuchar+1] = *(uchar*)&pattern; -- arrays2[SIZEARRAY+offsetuchar+2] = *(uchar*)&pattern; -- arrays2[SIZEARRAY+offsetuchar+3] = *(uchar*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+0] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+1] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+2] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+3] = *(float*)&pattern; -+ const union -+ { -+ uint32_t pattern; -+ uchar ucharpattern; -+ float floatpattern; -+ } pattern = { .pattern = 0xbcbcbcbc }; -+ -+ arrays2[offsetuchar-4] = *(uchar*)&pattern.ucharpattern; -+ arrays2[offsetuchar-3] = *(uchar*)&pattern.ucharpattern; -+ arrays2[offsetuchar-2] = *(uchar*)&pattern.ucharpattern; -+ arrays2[offsetuchar-1] = *(uchar*)&pattern.ucharpattern; -+ arrayf[offsetfloat-4] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-3] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-2] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-1] = *(float*)&pattern.floatpattern; -+ arrays2[SIZEARRAY+offsetuchar+0] = *(uchar*)&pattern.ucharpattern; -+ arrays2[SIZEARRAY+offsetuchar+1] = *(uchar*)&pattern.ucharpattern; -+ arrays2[SIZEARRAY+offsetuchar+2] = *(uchar*)&pattern.ucharpattern; -+ arrays2[SIZEARRAY+offsetuchar+3] = *(uchar*)&pattern.ucharpattern; -+ arrayf[SIZEARRAY+offsetfloat+0] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+1] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+2] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+3] = *(float*)&pattern.floatpattern; - - // sanity tests - QCOMPARE(SIZEARRAY*1, SIZEARRAY * ISIZEOF(arrays1[0])); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern); - QCOMPARE(arrayf+4,&arrayf[4]); - QCOMPARE(arrays2+4,&arrays2[4]); - -@@ -549,22 +561,22 @@ class TestAudioUtils: public QObject - int val2 = AudioOutputUtil::fromFloat(FORMAT_U8, arrays2+offsetuchar, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float)); - QCOMPARE(val2, SIZEARRAY * ISIZEOF(uchar)); - -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern); -- QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern); -+ QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern); - - av_free(arrays1); - av_free(arrays2); -@@ -686,42 +698,48 @@ class TestAudioUtils: public QObject - arrays1[i] = j; - } - -- uint32_t pattern = 0xbcbcbcbc; -- arrays2[offsetint32_t-4] = *(int32_t*)&pattern; -- arrays2[offsetint32_t-3] = *(int32_t*)&pattern; -- arrays2[offsetint32_t-2] = *(int32_t*)&pattern; -- arrays2[offsetint32_t-1] = *(int32_t*)&pattern; -- arrayf[offsetfloat-4] = *(float*)&pattern; -- arrayf[offsetfloat-3] = *(float*)&pattern; -- arrayf[offsetfloat-2] = *(float*)&pattern; -- arrayf[offsetfloat-1] = *(float*)&pattern; -- arrays2[SIZEARRAY+offsetint32_t+0] = *(int32_t*)&pattern; -- arrays2[SIZEARRAY+offsetint32_t+1] = *(int32_t*)&pattern; -- arrays2[SIZEARRAY+offsetint32_t+2] = *(int32_t*)&pattern; -- arrays2[SIZEARRAY+offsetint32_t+3] = *(int32_t*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+0] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+1] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+2] = *(float*)&pattern; -- arrayf[SIZEARRAY+offsetfloat+3] = *(float*)&pattern; -+ const union -+ { -+ uint32_t pattern; -+ int32_t int32pattern; -+ float floatpattern; -+ } pattern = { .pattern = 0xbcbcbcbc }; -+ -+ arrays2[offsetint32_t-4] = *(int32_t*)&pattern.int32pattern; -+ arrays2[offsetint32_t-3] = *(int32_t*)&pattern.int32pattern; -+ arrays2[offsetint32_t-2] = *(int32_t*)&pattern.int32pattern; -+ arrays2[offsetint32_t-1] = *(int32_t*)&pattern.int32pattern; -+ arrayf[offsetfloat-4] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-3] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-2] = *(float*)&pattern.floatpattern; -+ arrayf[offsetfloat-1] = *(float*)&pattern.floatpattern; -+ arrays2[SIZEARRAY+offsetint32_t+0] = *(int32_t*)&pattern.int32pattern; -+ arrays2[SIZEARRAY+offsetint32_t+1] = *(int32_t*)&pattern.int32pattern; -+ arrays2[SIZEARRAY+offsetint32_t+2] = *(int32_t*)&pattern.int32pattern; -+ arrays2[SIZEARRAY+offsetint32_t+3] = *(int32_t*)&pattern.int32pattern; -+ arrayf[SIZEARRAY+offsetfloat+0] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+1] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+2] = *(float*)&pattern.floatpattern; -+ arrayf[SIZEARRAY+offsetfloat+3] = *(float*)&pattern.floatpattern; - - // sanity tests - QCOMPARE(SIZEARRAY*4, SIZEARRAY * ISIZEOF(arrays1[0])); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern); - QCOMPARE(arrayf+4,&arrayf[4]); - QCOMPARE(arrays2+4,&arrays2[4]); - -@@ -730,22 +748,22 @@ class TestAudioUtils: public QObject - int val2 = AudioOutputUtil::fromFloat(FORMAT_S32, arrays2+offsetint32_t, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float)); - QCOMPARE(val2, SIZEARRAY * ISIZEOF(int32_t)); - -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern); -- QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern); -- QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern); -+ QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern); - - av_free(arrays1); - av_free(arrays2); diff --git a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild index 820145e65378..4809398bba76 100644 --- a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild +++ b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild @@ -16,7 +16,8 @@ MYTHTV_BRANCH="fixes/${P%.*}" DESCRIPTION="Open Source DVR and media center hub" HOMEPAGE="https://www.mythtv.org" -SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz" +SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~juippis/distfiles/tmp/mythtv-30.0_p20190808-cast_constants_to_short.patch" LICENSE="GPL-2+" KEYWORDS="~amd64 ~x86" @@ -143,7 +144,7 @@ BDEPEND="virtual/pkgconfig" PATCHES=( "${FILESDIR}/${P}-respect_LDFLAGS.patch" - "${FILESDIR}/${P}-cast_constants_to_short.patch" + "${DISTDIR}/${P}-cast_constants_to_short.patch" "${FILESDIR}/${P}-Fix_Dereferencing_type-punned_pointer.patch" "${FILESDIR}/${P}-Fix_unitialized_variables.patch" "${FILESDIR}/${PN}-29.1-Fix_create_webbrowser_window.patch" |