summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/audio_out/audio_directx2_out.c2
-rw-r--r--src/audio_out/audio_oss_out.c16
-rw-r--r--src/input/http_helper.h5
-rw-r--r--src/input/input_cdda.c2
-rw-r--r--src/libreal/real_common.c2
-rw-r--r--src/post/audio/stretch.c2
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/SearchLoop0A.inc4
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/SearchLoopBottom.inc54
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/SearchLoopTop.inc66
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/StrangeBob.inc80
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc6
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/WierdBob.inc40
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/tomsmocompmacros.h12
-rw-r--r--src/post/deinterlace/xine_plugin.c2
-rw-r--r--src/xine-engine/xine_private.h2
-rw-r--r--src/xine-utils/xine_check.c3
16 files changed, 162 insertions, 136 deletions
diff --git a/src/audio_out/audio_directx2_out.c b/src/audio_out/audio_directx2_out.c
index fddad16d0..de1aadd2a 100644
--- a/src/audio_out/audio_directx2_out.c
+++ b/src/audio_out/audio_directx2_out.c
@@ -388,7 +388,7 @@ static int audio_fill(dx2_driver_t *this, char *data, size_t size) {
err = IDirectSoundBuffer_Lock(this->dsbuffer, this->write_pos, size, &ptr1, &size1, &ptr2, &size2, 0);
/* try to restore the buffer, if necessary */
if (err == DSERR_BUFFERLOST) {
- xine_log(this->class->xine, XINE_LOG_MSG, _(LOG_MODULE ": buffer lost, tryig to restore\n"));
+ xine_log(this->class->xine, XINE_LOG_MSG, _(LOG_MODULE ": buffer lost, trying to restore\n"));
IDirectSoundBuffer_Restore(this->dsbuffer);
err = IDirectSoundBuffer_Lock(this->dsbuffer, this->write_pos, size, &ptr1, &size1, &ptr2, &size2, 0); }
if (err != DS_OK) {
diff --git a/src/audio_out/audio_oss_out.c b/src/audio_out/audio_oss_out.c
index cf1608a25..06d9115ef 100644
--- a/src/audio_out/audio_oss_out.c
+++ b/src/audio_out/audio_oss_out.c
@@ -134,7 +134,6 @@ typedef struct oss_driver_s {
int buffer_size;
struct {
- char *name;
int fd;
int prop;
int volume;
@@ -374,7 +373,7 @@ static int ao_oss_delay(ao_driver_t *this_gen) {
count_info info;
oss_driver_t *this = (oss_driver_t *) this_gen;
- int bytes_left;
+ int bytes_left = 0;
int frames;
struct timeval tv;
@@ -507,7 +506,6 @@ static void ao_oss_exit(ao_driver_t *this_gen) {
if (this->audio_fd != -1)
close(this->audio_fd);
- free (this->mixer.name);
free (this);
}
@@ -1019,6 +1017,7 @@ static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *da
*/
{
char mixer_name[32];
+ char mixer_dev[32];
int mixer_num;
int audio_devs;
char *parse;
@@ -1040,15 +1039,14 @@ static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *da
parse[0] = '\0';
parse += 3;
if (devname_val == 0)
- asprintf(&this->mixer.name, "%smixer%s", mixer_name, parse);
+ snprintf(mixer_dev, sizeof(mixer_dev), "%smixer%s", mixer_name, parse);
else if (mixer_num == -1)
- asprintf(&this->mixer.name, "%smixer", mixer_name);
+ snprintf(mixer_dev, sizeof(mixer_dev), "%smixer", mixer_name);
else
- asprintf(&this->mixer.name, "%smixer%d", mixer_name, mixer_num);
+ snprintf(mixer_dev, sizeof(mixer_dev), "%smixer%d", mixer_name, mixer_num);
}
- _x_assert(this->mixer.name);
- this->mixer.fd = xine_open_cloexec(this->mixer.name, O_RDONLY);
+ this->mixer.fd = xine_open_cloexec(mixer_dev, O_RDONLY);
if(this->mixer.fd != -1) {
@@ -1076,7 +1074,7 @@ static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *da
} else
xprintf (class->xine, XINE_VERBOSITY_LOG,
- _("audio_oss_out: open() mixer %s failed: %s\n"), this->mixer.name, strerror(errno));
+ _("audio_oss_out: open() mixer %s failed: %s\n"), mixer_dev, strerror(errno));
this->mixer.mute = 0;
this->mixer.volume = ao_oss_get_property (&this->ao_driver, this->mixer.prop);
diff --git a/src/input/http_helper.h b/src/input/http_helper.h
index 7ca3ac150..e53ccbe88 100644
--- a/src/input/http_helper.h
+++ b/src/input/http_helper.h
@@ -23,6 +23,8 @@
#ifndef HTTP_HELPER_H
#define HTTP_HELPER_H
+#include <xine/attributes.h>
+
/*
* user agent finder, using modified protcol names
* {proto}://...
@@ -53,8 +55,9 @@ int _x_parse_url (char *url, char **proto, char** host, int *port,
*
* return:
* the canonicalised URL (caller must free() it)
+ * NULL if error
*/
-static inline char *_x_canonicalise_url (const char *base, const char *url) {
+static inline XINE_MALLOC char *_x_canonicalise_url (const char *base, const char *url) {
size_t base_length;
char *cut, *ret;
diff --git a/src/input/input_cdda.c b/src/input/input_cdda.c
index 568e021f5..61528fea5 100644
--- a/src/input/input_cdda.c
+++ b/src/input/input_cdda.c
@@ -2507,6 +2507,8 @@ static char ** cdda_class_get_autoplay_list (input_class_t *this_gen,
num_tracks = toc->last_track - toc->first_track;
if (toc->ignore_last_track)
num_tracks--;
+ if (num_tracks >= MAX_TRACKS-1)
+ num_tracks = MAX_TRACKS - 2;
for ( i = 0; i <= num_tracks; i++ )
asprintf(&this->autoplaylist[i],"cdda:/%d",i+toc->first_track);
diff --git a/src/libreal/real_common.c b/src/libreal/real_common.c
index 61c620559..0c607be86 100644
--- a/src/libreal/real_common.c
+++ b/src/libreal/real_common.c
@@ -175,6 +175,8 @@ void *_x_real_codec_open(xine_stream_t *const stream, const char *const path,
xprintf (stream->xine, XINE_VERBOSITY_DEBUG,
LOG_MODULE ": error loading %s: %s\n", codecpath, dlerror());
+
+ free(codecpath);
}
_x_message(stream, XINE_MSG_LIBRARY_LOAD_ERROR, codec_name, NULL);
diff --git a/src/post/audio/stretch.c b/src/post/audio/stretch.c
index 7397844b4..d56f23376 100644
--- a/src/post/audio/stretch.c
+++ b/src/post/audio/stretch.c
@@ -267,7 +267,7 @@ static char * get_help (void) {
return _("This filter will perform a time stretch, playing the "
"stream faster or slower by a factor. Pitch is optionally "
"preserved, so it is possible, for example, to use it to "
- "watch a movie in less time than it was originaly shot.\n"
+ "watch a movie in less time than it was originally shot.\n"
);
}
diff --git a/src/post/deinterlace/plugins/tomsmocomp/SearchLoop0A.inc b/src/post/deinterlace/plugins/tomsmocomp/SearchLoop0A.inc
index 844c6f91a..b1d9aeca7 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/SearchLoop0A.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/SearchLoop0A.inc
@@ -7,9 +7,9 @@
// up by a little, and adjust later
#ifdef IS_SSE2
- "paddusb "MANGLE(ONES)", %%xmm7\n\t" // bias toward no motion
+ "paddusb "_ONES", %%xmm7\n\t" // bias toward no motion
#else
- "paddusb "MANGLE(ONES)", %%mm7\n\t" // bias toward no motion
+ "paddusb "_ONES", %%mm7\n\t" // bias toward no motion
#endif
MERGE4PIXavg("(%%"XDI", %%"XCX")", "(%%"XSI", %%"XCX")") // center, in old and new
diff --git a/src/post/deinterlace/plugins/tomsmocomp/SearchLoopBottom.inc b/src/post/deinterlace/plugins/tomsmocomp/SearchLoopBottom.inc
index 63755d1fc..595325738 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/SearchLoopBottom.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/SearchLoopBottom.inc
@@ -18,7 +18,7 @@
// Use the best weave if diffs less than 10 as that
// means the image is still or moving cleanly
// if there is motion we will clip which will catch anything
- "psubusb "MANGLE(FOURS)", %%mm7\n\t" // sets bits to zero if weave diff < 4
+ "psubusb "_FOURS", %%mm7\n\t" // sets bits to zero if weave diff < 4
"pxor %%mm0, %%mm0\n\t"
"pcmpeqb %%mm0, %%mm7\n\t" // all ff where weave better, else 00
"pcmpeqb %%mm7, %%mm0\n\t" // all ff where bob better, else 00
@@ -28,10 +28,10 @@
#else
// Use the better of bob or weave
// pminub mm4, TENS // the most we care about
- V_PMINUB ("%%mm4", MANGLE(TENS), "%%mm0") // the most we care about
+ V_PMINUB ("%%mm4", _TENS, "%%mm0") // the most we care about
"psubusb %%mm4, %%mm7\n\t" // foregive that much from weave est?
- "psubusb "MANGLE(FOURS)", %%mm7\n\t" // bias it a bit toward weave
+ "psubusb "_FOURS", %%mm7\n\t" // bias it a bit toward weave
"pxor %%mm0, %%mm0\n\t"
"pcmpeqb %%mm0, %%mm7\n\t" // all ff where weave better, else 00
"pcmpeqb %%mm7, %%mm0\n\t" // all ff where bob better, else 00
@@ -42,39 +42,39 @@
// pminub mm0, Max_Vals // but clip to catch the stray error
-// V_PMINUB ("%%mm0", MANGLE(Max_Vals), "%%mm1") // but clip to catch the stray error
+// V_PMINUB ("%%mm0", _Max_Vals, "%%mm1") // but clip to catch the stray error
// pmaxub mm0, Min_Vals
-// V_PMAXUB ("%%mm0", MANGLE(Min_Vals))
+// V_PMAXUB ("%%mm0", _Min_Vals)
#endif
MOVX" "_pDest", %%"XAX"\n\t"
-
+ ADDX" "_olddx", %%"XAX"\n\t"
+
#ifdef USE_VERTICAL_FILTER
"movq %%mm0, %%mm1\n\t"
- // pavgb mm0, qword ptr["XBX"]
- V_PAVGB ("%%mm0", "(%%"XBX")", "%%mm2", MANGLE(ShiftMask))
- // movntq qword ptr["XAX"+"XDX"], mm0
- V_MOVNTQ ("(%"XAX", %%"XDX")", "%%mm0")
- // pavgb mm1, qword ptr["XBX"+"XCX"]
- V_PAVGB ("%%mm1", "(%%"XBX", %%"XCX")", "%%mm2", MANGLE(ShiftMask))
- "addq "_dst_pitchw", %%"XBX
- // movntq qword ptr["XAX"+"XDX"], mm1
- V_MOVNTQ ("(%%"XAX", %%"XDX")", "%%mm1")
+ // pavgb mm0, qword ptr["XDX"]
+ V_PAVGB ("%%mm0", "(%%"XDX")", "%%mm2", _ShiftMask)
+ // movntq qword ptr["XAX"+"_olddx"], mm0
+ V_MOVNTQ ("(%"XAX")", "%%mm0")
+ // pavgb mm1, qword ptr["XDX"+"XCX"]
+ V_PAVGB ("%%mm1", "(%%"XDX", %%"XCX")", "%%mm2", _ShiftMask)
+ "addq "_dst_pitchw", %%"XDX
+ // movntq qword ptr["XAX"+"_olddx"], mm1
+ V_MOVNTQ ("(%%"XAX")", "%%mm1")
#else
- // movntq qword ptr["XAX"+"XDX"], mm0
- V_MOVNTQ ("(%%"XAX", %%"XDX")", "%%mm0")
+ // movntq qword ptr["XAX"+"_olddx"], mm0
+ V_MOVNTQ ("(%%"XAX")", "%%mm0")
#endif
- LEAX" 8(%%"XDX"), %%"XDX"\n\t" // bump offset pointer
- CMPX" "_Last8", %%"XDX"\n\t" // done with line?
+ ADDX" $8, "_olddx"\n\t" // bump offset pointer
+ MOVX" "_olddx", %%"XAX"\n\t"
+ CMPX" "_Last8", %%"XAX"\n\t" // done with line?
"jb 1b\n\t" // y
#endif
- MOVX" "_oldbx", %%"XBX"\n\t"
-
: /* no outputs */
: "m"(pBob),
@@ -85,7 +85,17 @@
"m"(pSrc),
"m"(pSrcP),
"m"(pBobP),
- "m"(oldbx)
+ "m"(olddx),
+ "m"(UVMask),
+ "m"(ShiftMask),
+ "m"(FOURS),
+ "m"(TENS),
+ "m"(Max_Vals),
+ "m"(Min_Vals),
+ "m"(YMask),
+ "m"(Max_Mov),
+ "m"(ONES),
+ "m"(DiffThres)
: XAX, XCX, XDX, XSI, XDI,
#ifdef ARCH_X86
diff --git a/src/post/deinterlace/plugins/tomsmocomp/SearchLoopTop.inc b/src/post/deinterlace/plugins/tomsmocomp/SearchLoopTop.inc
index 5e9f7f04a..9c4b4206c 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/SearchLoopTop.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/SearchLoopTop.inc
@@ -66,7 +66,17 @@ long dst_pitchw = dst_pitch; // local stor so asm can ref
#define _pSrc "%5"
#define _pSrcP "%6"
#define _pBobP "%7"
-#define _oldbx "%8"
+#define _olddx "%8"
+#define _UVMask "%9"
+#define _ShiftMask "%10"
+#define _FOURS "%11"
+#define _TENS "%12"
+#define _Max_Vals "%13"
+#define _Min_Vals "%14"
+#define _YMask "%15"
+#define _Max_Mov "%16"
+#define _ONES "%17"
+#define _DiffThres "%18"
#endif
for (y=1; y < FldHeight-1; y++)
@@ -77,75 +87,75 @@ long dst_pitchw = dst_pitch; // local stor so asm can ref
// Loop general reg usage
//
// XAX - pBobP, then pDest
- // XBX - pBob
+ // XDX - pBob
// XCX - src_pitch2
- // XDX - current offset
+ // _olddx - current offset
// XDI - prev weave pixels, 1 line up
// XSI - next weave pixels, 1 line up
- // Save "XBX" (-fPIC)
- MOVX" %%"XBX", "_oldbx"\n\t"
-
#ifdef IS_SSE2
// sse2 code deleted for now
#else
// simple bob first 8 bytes
- MOVX" "_pBob", %%"XBX"\n\t"
+ MOVX" "_pBob", %%"XDX"\n\t"
MOVX" "_src_pitch2", %%"XCX"\n\t"
#ifdef USE_VERTICAL_FILTER
- "movq (%%"XBX"), %%mm0\n\t"
- "movq (%%"XBX", %%"XCX"), %%mm1\n\t" //, qword ptr["XBX"+"XCX"]
+ "movq (%%"XDX"), %%mm0\n\t"
+ "movq (%%"XDX", %%"XCX"), %%mm1\n\t" //, qword ptr["XDX"+"XCX"]
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // halfway between
- V_PAVGB ("%%mm0", "%%mm2", "%%mm3", MANGLE(ShiftMask)) // 1/4 way
- V_PAVGB ("%%mm1", "%%mm2", "%%mm3", MANGLE(ShiftMask)) // 3/4 way
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // halfway between
+ V_PAVGB ("%%mm0", "%%mm2", "%%mm3", _ShiftMask) // 1/4 way
+ V_PAVGB ("%%mm1", "%%mm2", "%%mm3", _ShiftMask) // 3/4 way
MOVX" "_pDest", %%"XDI"\n\t"
MOVX" "_dst_pitchw", %%"XAX"\n\t"
V_MOVNTQ ("(%%"XDI")", "%%mm0")
V_MOVNTQ ("(%%"XDI", %%"XAX")", "%%mm1") // qword ptr["XDI"+"XAX"], mm1
// simple bob last 8 bytes
- MOVX" "_Last8", %%"XDX"\n\t"
- LEAX" (%%"XBX", %%"XDX"), %%"XSI"\n\t" // ["XBX"+"XDX"]
+ MOVX" "_Last8", %%"XSI"\n\t"
+ MOVX" %%"XSI", "_olddx"\n\t"
+ ADDX" %%"XDX", %%"XSI"\n\t" // ["XDX"+"_olddx"]
"movq (%%"XSI"), %%mm0\n\t"
"movq (%%"XSI", %%"XCX"), %%mm1\n\t" // qword ptr["XSI"+"XCX"]
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // halfway between
- V_PAVGB ("%%mm0", "%%mm2", "%%mm3", MANGLE(ShiftMask)) // 1/4 way
- V_PAVGB ("%%mm1", "%%mm2", "%%mm3", MANGLE(ShiftMask)) // 3/4 way
- ADDX" %%"XDX", %%"XDI"\n\t" // last 8 bytes of dest
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // halfway between
+ V_PAVGB ("%%mm0", "%%mm2", "%%mm3", _ShiftMask) // 1/4 way
+ V_PAVGB ("%%mm1", "%%mm2", "%%mm3", _ShiftMask) // 3/4 way
+ ADDX" "_olddx", %%"XDI"\n\t" // last 8 bytes of dest
V_MOVNTQ ("%%"XDI"", "%%mm0")
V_MOVNTQ ("(%%"XDI", %%"XAX")", "%%mm1") // qword ptr["XDI"+"XAX"], mm1)
#else
- "movq (%%"XBX"), %%mm0\n\t"
- // pavgb mm0, qword ptr["XBX"+"XCX"]
- V_PAVGB ("%%mm0", "(%%"XBX", %%"XCX")", "%%mm2", MANGLE(ShiftMask)) // qword ptr["XBX"+"XCX"], mm2, ShiftMask)
+ "movq (%%"XDX"), %%mm0\n\t"
+ // pavgb mm0, qword ptr["XDX"+"XCX"]
+ V_PAVGB ("%%mm0", "(%%"XDX", %%"XCX")", "%%mm2", _ShiftMask) // qword ptr["XDX"+"XCX"], mm2, ShiftMask)
MOVX" "_pDest", %%"XDI"\n\t"
V_MOVNTQ ("(%%"XDI")", "%%mm0")
// simple bob last 8 bytes
- MOVX" "_Last8", %%"XDX"\n\t"
- LEAX" (%%"XBX", %%"XDX"), %%"XSI"\n\t" //"XSI", ["XBX"+"XDX"]
+ MOVX" "_Last8", %%"XSI"\n\t"
+ MOVX" %%"XSI", "_olddx"\n\t"
+ ADDX" %%"XDX", %%"XSI"\n\t" //"XSI", ["XDX"+"_olddx"]
"movq (%%"XSI"), %%mm0\n\t"
// pavgb mm0, qword ptr["XSI"+"XCX"]
- V_PAVGB ("%%mm0", "(%%"XSI", %%"XCX")", "%%mm2", MANGLE(ShiftMask)) // qword ptr["XSI"+"XCX"], mm2, ShiftMask)
- V_MOVNTQ ("(%%"XDI", %%"XDX")", "%%mm0") // qword ptr["XDI"+"XDX"], mm0)
+ V_PAVGB ("%%mm0", "(%%"XSI", %%"XCX")", "%%mm2", _ShiftMask) // qword ptr["XSI"+"XCX"], mm2, ShiftMask)
+ ADDX" "_olddx", %%"XDI"\n\t"
+ V_MOVNTQ ("(%%"XDI")", "%%mm0") // qword ptr["XDI"+"_olddx"], mm0)
#endif
// now loop and get the middle qwords
MOVX" "_pSrc", %%"XSI"\n\t"
MOVX" "_pSrcP", %%"XDI"\n\t"
- MOVX" $8, %%"XDX"\n\t" // curr offset longo all lines
+ MOVX" $8, "_olddx"\n\t" // curr offset longo all lines
"1:\n\t"
MOVX" "_pBobP", %%"XAX"\n\t"
ADDX" $8, %%"XDI"\n\t"
ADDX" $8, %%"XSI"\n\t"
- ADDX" $8, %%"XBX"\n\t"
- ADDX" %%"XDX", %%"XAX"\n\t"
+ ADDX" $8, %%"XDX"\n\t"
+ ADDX" "_olddx", %%"XAX"\n\t"
#ifdef USE_STRANGE_BOB
#include "StrangeBob.inc"
diff --git a/src/post/deinterlace/plugins/tomsmocomp/StrangeBob.inc b/src/post/deinterlace/plugins/tomsmocomp/StrangeBob.inc
index 5ca5b85bb..9d02ebc11 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/StrangeBob.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/StrangeBob.inc
@@ -31,22 +31,22 @@
"pxor %%mm6, %%mm6\n\t"
"pxor %%mm7, %%mm7\n\t"
- "movq -2(%%"XBX"), %%mm0\n\t" // value a from top left
- "movq -4(%%"XBX", %%"XCX"), %%mm1\n\t" // value m from bottom right
+ "movq -2(%%"XDX"), %%mm0\n\t" // value a from top left
+ "movq -4(%%"XDX", %%"XCX"), %%mm1\n\t" // value m from bottom right
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
"por %%mm1, %%mm3\n\t" // abs(a,m)
- "psubusb "MANGLE(DiffThres)", %%mm3\n\t" // nonzero where abs(a,m) > Thres else 0
+ "psubusb "_DiffThres", %%mm3\n\t" // nonzero where abs(a,m) > Thres else 0
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where abs(a,m) < Thres, else 00
"pcmpeqb %%mm3, %%mm4\n\t" // here ff where abs(a,m) > Thres, else 00
- "movq -4(%%"XBX"), %%mm0\n\t" // value j
- "movq 4(%%"XBX", %%"XCX"), %%mm1\n\t" // value n
+ "movq -4(%%"XDX"), %%mm0\n\t" // value j
+ "movq 4(%%"XDX", %%"XCX"), %%mm1\n\t" // value n
"movq %%mm0, %%mm2\n\t"
"pavgb %%mm1, %%mm2\n\t" // avg(j,n)
"movq %%mm0, %%mm3\n\t"
@@ -55,7 +55,7 @@
"por %%mm1, %%mm0\n\t" // abs(j,n)
"movq %%mm0, %%mm1\n\t"
- "psubusb "MANGLE(DiffThres)", %%mm1\n\t" // nonzero where abs(j,n) > Thres else 0
+ "psubusb "_DiffThres", %%mm1\n\t" // nonzero where abs(j,n) > Thres else 0
"pxor %%mm3, %%mm3\n\t"
"pcmpeqb %%mm3, %%mm1\n\t" // now ff where abs(j,n) < Thres, else 00
@@ -75,31 +75,31 @@
"por %%mm0, %%mm7\n\t"
// k & m
- "movq 2(%%"XBX"), %%mm0\n\t" // value c from top left
- "movq 4(%%"XBX", %%"XCX"), %%mm1\n\t" // value n from bottom right
+ "movq 2(%%"XDX"), %%mm0\n\t" // value c from top left
+ "movq 4(%%"XDX", %%"XCX"), %%mm1\n\t" // value n from bottom right
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
"por %%mm1, %%mm3\n\t" // abs(c,n)
- "psubusb "MANGLE(DiffThres)", %%mm3\n\t" // nonzero where abs(c,n) > Thres else 0
+ "psubusb "_DiffThres", %%mm3\n\t" // nonzero where abs(c,n) > Thres else 0
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where abs(c,n) < Thres, else 00
"pcmpeqb %%mm3, %%mm4\n\t" // here ff where abs(c,n) > Thres, else 00
- "movq 4(%%"XBX"), %%mm0\n\t" // value k
- "movq -4(%%"XBX", %%"XCX"), %%mm1\n\t" // value m
+ "movq 4(%%"XDX"), %%mm0\n\t" // value k
+ "movq -4(%%"XDX", %%"XCX"), %%mm1\n\t" // value m
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(k,m)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(k,m)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm0\n\t"
"psubusb %%mm3, %%mm1\n\t"
"por %%mm1, %%mm0\n\t" // abs(k,m)
"movq %%mm0, %%mm1\n\t"
- "psubusb "MANGLE(DiffThres)", %%mm1\n\t" // nonzero where abs(k,m) > Thres else 0
+ "psubusb "_DiffThres", %%mm1\n\t" // nonzero where abs(k,m) > Thres else 0
"pxor %%mm3, %%mm3\n\t"
"pcmpeqb %%mm3, %%mm1\n\t" // now ff where abs(k,m) < Thres, else 00
@@ -120,30 +120,30 @@
// c & d
- "movq (%%"XBX"), %%mm0\n\t" // value b from top left
- "movq 2(%%"XBX", %%"XCX"), %%mm1\n\t" // value f from bottom right
+ "movq (%%"XDX"), %%mm0\n\t" // value b from top left
+ "movq 2(%%"XDX", %%"XCX"), %%mm1\n\t" // value f from bottom right
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
"por %%mm1, %%mm3\n\t" // abs(b,f)
- "psubusb "MANGLE(DiffThres)", %%mm3\n\t" // nonzero where abs(b,f) > Thres else 0
+ "psubusb "_DiffThres", %%mm3\n\t" // nonzero where abs(b,f) > Thres else 0
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where abs(b,f) < Thres, else 00
"pcmpeqb %%mm3, %%mm4\n\t" // here ff where abs(b,f) > Thres, else 00
- "movq 2(%%"XBX"), %%mm0\n\t" // value c
- "movq -2(%%"XBX", %%"XCX"), %%mm1\n\t" // value d
+ "movq 2(%%"XDX"), %%mm0\n\t" // value c
+ "movq -2(%%"XDX", %%"XCX"), %%mm1\n\t" // value d
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(c,d)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(c,d)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm0\n\t"
"psubusb %%mm3, %%mm1\n\t"
"por %%mm1, %%mm0\n\t" // abs(c,d)
"movq %%mm0, %%mm1\n\t"
- "psubusb "MANGLE(DiffThres)", %%mm1\n\t" // nonzero where abs(c,d) > Thres else 0
+ "psubusb "_DiffThres", %%mm1\n\t" // nonzero where abs(c,d) > Thres else 0
"pxor %%mm3, %%mm3\n\t"
"pcmpeqb %%mm3, %%mm1\n\t" // now ff where abs(c,d) < Thres, else 00
@@ -163,30 +163,30 @@
"por %%mm0, %%mm7\n\t"
// a & f
- "movq (%%"XBX"), %%mm0\n\t" // value b from top left
- "movq -2(%%"XBX", %%"XCX"), %%mm1\n\t" // value d from bottom right
+ "movq (%%"XDX"), %%mm0\n\t" // value b from top left
+ "movq -2(%%"XDX", %%"XCX"), %%mm1\n\t" // value d from bottom right
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
"por %%mm1, %%mm3\n\t" // abs(b,d)
- "psubusb "MANGLE(DiffThres)", %%mm3\n\t" // nonzero where abs(b,d) > Thres else 0
+ "psubusb "_DiffThres", %%mm3\n\t" // nonzero where abs(b,d) > Thres else 0
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where abs(b,d) < Thres, else 00
"pcmpeqb %%mm3, %%mm4\n\t" // here ff where abs(b,d) > Thres, else 00
- "movq -2(%%"XBX"), %%mm0\n\t" // value a
- "movq 2(%%"XBX", %%"XCX"), %%mm1\n\t" // value f
+ "movq -2(%%"XDX"), %%mm0\n\t" // value a
+ "movq 2(%%"XDX", %%"XCX"), %%mm1\n\t" // value f
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(a,f)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(a,f)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm0\n\t"
"psubusb %%mm3, %%mm1\n\t"
"por %%mm1, %%mm0\n\t" // abs(a,f)
"movq %%mm0, %%mm1\n\t"
- "psubusb "MANGLE(DiffThres)", %%mm1\n\t" // nonzero where abs(a,f) > Thres else 0
+ "psubusb "_DiffThres", %%mm1\n\t" // nonzero where abs(a,f) > Thres else 0
"pxor %%mm3, %%mm3\n\t"
"pcmpeqb %%mm3, %%mm1\n\t" // now ff where abs(a,f) < Thres, else 00
@@ -205,22 +205,22 @@
"por %%mm2, %%mm6\n\t"
"por %%mm0, %%mm7\n\t"
- "pand "MANGLE(YMask)", %%mm5\n\t" // mask out chroma from here
- "pand "MANGLE(YMask)", %%mm6\n\t" // mask out chroma from here
- "pand "MANGLE(YMask)", %%mm7\n\t" // mask out chroma from here
+ "pand "_YMask", %%mm5\n\t" // mask out chroma from here
+ "pand "_YMask", %%mm6\n\t" // mask out chroma from here
+ "pand "_YMask", %%mm7\n\t" // mask out chroma from here
// b,e
- "movq (%%"XBX"), %%mm0\n\t" // value b from top
- "movq (%%"XBX", %%"XCX"), %%mm1\n\t" // value e from bottom
+ "movq (%%"XDX"), %%mm0\n\t" // value b from top
+ "movq (%%"XDX", %%"XCX"), %%mm1\n\t" // value e from bottom
"movq %%mm0, %%mm2\n\t"
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(b,e)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(b,e)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm0\n\t"
"psubusb %%mm3, %%mm1\n\t"
"por %%mm1, %%mm0\n\t" // abs(b,e)
"movq %%mm0, %%mm1\n\t"
- "psubusb "MANGLE(DiffThres)", %%mm1\n\t" // nonzero where abs(b,e) > Thres else 0
+ "psubusb "_DiffThres", %%mm1\n\t" // nonzero where abs(b,e) > Thres else 0
"pxor %%mm3, %%mm3\n\t"
"pcmpeqb %%mm3, %%mm1\n\t" // now ff where abs(b,e) < Thres, else 00
@@ -238,8 +238,8 @@
"por %%mm0, %%mm7\n\t"
// bob in any leftovers
- "movq (%%"XBX"), %%mm0\n\t" // value b from top
- "movq (%%"XBX", %%"XCX"), %%mm1\n\t" // value e from bottom
+ "movq (%%"XDX"), %%mm0\n\t" // value b from top
+ "movq (%%"XDX", %%"XCX"), %%mm1\n\t" // value e from bottom
// We will also calc here the max/min values to later limit comb
@@ -271,7 +271,7 @@
"por %%mm2, %%mm3\n\t" // abs diff
// pmaxub %%mm3, %%mm4 // top or bottom pixel moved most
V_PMAXUB ("%%mm3", "%%mm4") // top or bottom pixel moved most
- "psubusb "MANGLE(DiffThres)", %%mm3\n\t" // moved more than allowed? or goes to 0?
+ "psubusb "_DiffThres", %%mm3\n\t" // moved more than allowed? or goes to 0?
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where low motion, else high motion
@@ -283,19 +283,19 @@
V_PMAXUB ("%%mm6", "%%mm2")
"psubusb %%mm3, %%mm2\n\t" // maybe decrease it to 0000.. if no surround motion
-// "movq %%mm2, "MANGLE(Min_Vals)"\n\t"
+// "movq %%mm2, "_Min_Vals"\n\t"
"movq %%mm0, %%mm2\n\t"
V_PMAXUB ("%%mm2", "%%mm1")
// pminub %%mm6, %%mm2 // clip our current results so far to be below this
V_PMINUB ("%%mm6", "%%mm2", "%%mm4")
"paddusb %%mm3, %%mm2\n\t" // maybe increase it to ffffff if no surround motion
-// "movq %%mm2, "MANGLE(Max_Vals)"\n\t"
+// "movq %%mm2, "_Max_Vals"\n\t"
#endif
"movq %%mm0, %%mm2\n\t"
// pavgb %%mm2, %%mm1 // avg(b,e)
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(b,e)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(b,e)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
diff --git a/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc b/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
index 3af46d8fa..d3ee46a20 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
@@ -31,8 +31,8 @@ static const int64_t __attribute__((__used__)) TENS = 0x0a0a0a0a0a0a0a0aull
static const int64_t __attribute__((__used__)) FOURS = 0x0404040404040404ull;
static const int64_t __attribute__((__used__)) ONES = 0x0101010101010101ull;
static const int64_t __attribute__((__used__)) ShiftMask = 0xfefffefffefffeffull;
-//static int64_t Min_Vals = 0x0000000000000000ull;
-//static int64_t Max_Vals = 0x0000000000000000ull;
+static int64_t Min_Vals = 0x0000000000000000ull;
+static int64_t Max_Vals = 0x0000000000000000ull;
#endif
#ifndef TopFirst
@@ -67,7 +67,7 @@ static void FUNCT_NAME(uint8_t *output, int outstride,
int rowsize;
int FldHeight;
int stride = (width*2);
- long oldbx;
+ long olddx;
src_pitch = stride*2;
diff --git a/src/post/deinterlace/plugins/tomsmocomp/WierdBob.inc b/src/post/deinterlace/plugins/tomsmocomp/WierdBob.inc
index 11614879a..9aa53b119 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/WierdBob.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/WierdBob.inc
@@ -14,22 +14,22 @@
// selected for the smallest of abs(a,f), abs(c,d), or abs(b,e), etc.
// a,f
- "movq -2(%%"XBX"), %%mm0\n\t" // value a from top left
- "movq 2(%%"XBX", %%"XCX"), %%mm1\n\t" // value f from bottom right
+ "movq -2(%%"XDX"), %%mm0\n\t" // value a from top left
+ "movq 2(%%"XDX", %%"XCX"), %%mm1\n\t" // value f from bottom right
"movq %%mm0, %%mm6\n\t"
// pavgb %%mm6, %%mm1 // avg(a,f), also best so far
- V_PAVGB ("%%mm6", "%%mm1", "%%mm7", MANGLE(ShiftMask)) // avg(a,f), also best so far
+ V_PAVGB ("%%mm6", "%%mm1", "%%mm7", _ShiftMask) // avg(a,f), also best so far
"movq %%mm0, %%mm7\n\t"
"psubusb %%mm1, %%mm7\n\t"
"psubusb %%mm0, %%mm1\n\t"
"por %%mm1, %%mm7\n\t" // abs diff, also best so far
// c,d
- "movq 2(%%"XBX"), %%mm0\n\t" // value a from top left
- "movq -2(%%"XBX", %%"XCX"), %%mm1\n\t" // value f from bottom right
+ "movq 2(%%"XDX"), %%mm0\n\t" // value a from top left
+ "movq -2(%%"XDX", %%"XCX"), %%mm1\n\t" // value f from bottom right
"movq %%mm0, %%mm2\n\t"
// pavgb %%mm2, %%mm1 // avg(c,d)
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(c,d)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(c,d)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
@@ -49,15 +49,15 @@
"por %%mm2, %%mm6\n\t" // and merge new & old vals keeping best
"por %%mm1, %%mm7\n\t"
- "por "MANGLE(UVMask)", %%mm7\n\t" // but we know chroma is worthless so far
- "pand "MANGLE(YMask)", %%mm5\n\t" // mask out chroma from here also
+ "por "_UVMask", %%mm7\n\t" // but we know chroma is worthless so far
+ "pand "_YMask", %%mm5\n\t" // mask out chroma from here also
// j,n
- "movq -4(%%"XBX"), %%mm0\n\t" // value j from top left
- "movq 4(%%"XBX", %%"XCX"), %%mm1\n\t" // value n from bottom right
+ "movq -4(%%"XDX"), %%mm0\n\t" // value j from top left
+ "movq 4(%%"XDX", %%"XCX"), %%mm1\n\t" // value n from bottom right
"movq %%mm0, %%mm2\n\t"
// pavgb %%mm2, %%mm1 // avg(j,n)
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(j,n)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(j,n)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
"psubusb %%mm0, %%mm1\n\t"
@@ -79,11 +79,11 @@
"por %%mm1, %%mm7\n\t" // "
// k, m
- "movq 4(%%"XBX"), %%mm0\n\t" // value k from top right
- "movq -4(%%"XBX", %%"XCX"), %%mm1\n\t" // value n from bottom left
+ "movq 4(%%"XDX"), %%mm0\n\t" // value k from top right
+ "movq -4(%%"XDX", %%"XCX"), %%mm1\n\t" // value n from bottom left
"movq %%mm0, %%mm4\n\t"
// pavgb %%mm4, %%mm1 // avg(k,m)
- V_PAVGB ("%%mm4", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(k,m)
+ V_PAVGB ("%%mm4", "%%mm1", "%%mm3", _ShiftMask) // avg(k,m)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
@@ -108,8 +108,8 @@
"por %%mm1, %%mm7\n\t" // "
// b,e
- "movq (%%"XBX"), %%mm0\n\t" // value b from top
- "movq (%%"XBX", %%"XCX"), %%mm1\n\t" // value e from bottom
+ "movq (%%"XDX"), %%mm0\n\t" // value b from top
+ "movq (%%"XDX", %%"XCX"), %%mm1\n\t" // value e from bottom
// We will also calc here the max/min values to later limit comb
// so the max excursion will not exceed the Max_Comb constant
@@ -140,7 +140,7 @@
"por %%mm2, %%mm3\n\t" // abs diff
// pmaxub %%mm3, %%mm4 // top or bottom pixel moved most
V_PMAXUB ("%%mm3", "%%mm4") // top or bottom pixel moved most
- "psubusb "MANGLE(Max_Mov)", %%mm3\n\t" // moved more than allowed? or goes to 0?
+ "psubusb "_Max_Mov", %%mm3\n\t" // moved more than allowed? or goes to 0?
"pxor %%mm4, %%mm4\n\t"
"pcmpeqb %%mm4, %%mm3\n\t" // now ff where low motion, else high motion
@@ -152,19 +152,19 @@
V_PMAXUB ("%%mm6", "%%mm2")
"psubusb %%mm3, %%mm2\n\t" // maybe decrease it to 0000.. if no surround motion
-// "movq %%mm2, "MANGLE(Min_Vals)"\n\t"
+// "movq %%mm2, "_Min_Vals"\n\t"
"movq %%mm0, %%mm2\n\t"
V_PMAXUB ("%%mm2", "%%mm1")
// pminub %%mm6, %%mm2 // clip our current results so far to be below this
V_PMINUB ("%%mm6", "%%mm2", "%%mm4")
"paddusb %%mm3, %%mm2\n\t" // maybe increase it to ffffff if no surround motion
-// "movq %%mm2, "MANGLE(Max_Vals)"\n\t"
+// "movq %%mm2, "_Max_Vals"\n\t"
#endif
"movq %%mm0, %%mm2\n\t"
// pavgb %%mm2, %%mm1 // avg(b,e)
- V_PAVGB ("%%mm2", "%%mm1", "%%mm3", MANGLE(ShiftMask)) // avg(b,e)
+ V_PAVGB ("%%mm2", "%%mm1", "%%mm3", _ShiftMask) // avg(b,e)
"movq %%mm0, %%mm3\n\t"
"psubusb %%mm1, %%mm3\n\t"
diff --git a/src/post/deinterlace/plugins/tomsmocomp/tomsmocompmacros.h b/src/post/deinterlace/plugins/tomsmocomp/tomsmocompmacros.h
index 875ed7055..e38cb5dc9 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/tomsmocompmacros.h
+++ b/src/post/deinterlace/plugins/tomsmocomp/tomsmocompmacros.h
@@ -114,7 +114,7 @@
"por %%xmm0, %%xmm5\n\t" /* and merge new & old vals */ \
"por %%xmm2, %%xmm7\n\t"
-#define RESET_CHROMA "por "MANGLE(UVMask)", %%xmm7\n\t"
+#define RESET_CHROMA "por "_UVMask", %%xmm7\n\t"
#else // ifdef IS_SSE2
@@ -126,7 +126,7 @@
"psubusb %%mm1, %%mm2\n\t" \
"psubusb %%mm0, %%mm3\n\t" \
"por %%mm3, %%mm2\n\t" \
- V_PAVGB ("%%mm0", "%%mm1", "%%mm3", MANGLE(ShiftMask)) /* avg of 2 pixels */ \
+ V_PAVGB ("%%mm0", "%%mm1", "%%mm3", _ShiftMask) /* avg of 2 pixels */ \
"movq %%mm2, %%mm3\n\t" /* another copy of our our weights */ \
"pxor %%mm1, %%mm1\n\t" \
"psubusb %%mm7, %%mm3\n\t" /* nonzero where old weights lower, else 0 */ \
@@ -144,14 +144,14 @@
"movq "PADDR2A", %%mm1\n\t" /* our pixel2 value */ \
"movq "PADDR1B", %%mm2\n\t" /* our 4 pixels */ \
"movq "PADDR2B", %%mm3\n\t" /* our pixel2 value */ \
- V_PAVGB("%%mm0", "%%mm2", "%%mm2", MANGLE(ShiftMask)) \
- V_PAVGB("%%mm1", "%%mm3", "%%mm3", MANGLE(ShiftMask)) \
+ V_PAVGB("%%mm0", "%%mm2", "%%mm2", _ShiftMask) \
+ V_PAVGB("%%mm1", "%%mm3", "%%mm3", _ShiftMask) \
"movq %%mm0, %%mm2\n\t" /* another copy of our pixel1 value */ \
"movq %%mm1, %%mm3\n\t" /* another copy of our pixel1 value */ \
"psubusb %%mm1, %%mm2\n\t" \
"psubusb %%mm0, %%mm3\n\t" \
"por %%mm3, %%mm2\n\t" \
- V_PAVGB("%%mm0", "%%mm1", "%%mm3", MANGLE(ShiftMask)) /* avg of 2 pixels */ \
+ V_PAVGB("%%mm0", "%%mm1", "%%mm3", _ShiftMask) /* avg of 2 pixels */ \
"movq %%mm2, %%mm3\n\t" /* another copy of our our weights */ \
"pxor %%mm1, %%mm1\n\t" \
"psubusb %%mm7, %%mm3\n\t" /* nonzero where old weights lower, else 0 */ \
@@ -164,7 +164,7 @@
"por %%mm0, %%mm5\n\t" /* and merge new & old vals */ \
"por %%mm2, %%mm7\n\t"
-#define RESET_CHROMA "por "MANGLE(UVMask)", %%mm7\n\t"
+#define RESET_CHROMA "por "_UVMask", %%mm7\n\t"
#endif
diff --git a/src/post/deinterlace/xine_plugin.c b/src/post/deinterlace/xine_plugin.c
index 5615e4ba1..a1f9c6efd 100644
--- a/src/post/deinterlace/xine_plugin.c
+++ b/src/post/deinterlace/xine_plugin.c
@@ -259,7 +259,7 @@ static char * get_static_help (void) {
"and cpu usage.\n"
"\n"
"* Uses several algorithms from tvtime and dscaler projects.\n"
- "Deinterlacing methods: (Not all methods are available for all plataforms)\n"
+ "Deinterlacing methods: (Not all methods are available for all platforms)\n"
"\n"
);
}
diff --git a/src/xine-engine/xine_private.h b/src/xine-engine/xine_private.h
index f1e94cd56..6d74e93b6 100644
--- a/src/xine-engine/xine_private.h
+++ b/src/xine-engine/xine_private.h
@@ -30,7 +30,7 @@
#define XINE_PRIVATE_H__
#ifndef XINE_LIBRARY_COMPILE
-# error xine_private.h is for libxine's private use only!
+# error xine_private.h is for libxine private use only!
#endif
#include <config.h>
diff --git a/src/xine-utils/xine_check.c b/src/xine-utils/xine_check.c
index 3c860493b..e6323dceb 100644
--- a/src/xine-utils/xine_check.c
+++ b/src/xine-utils/xine_check.c
@@ -93,7 +93,8 @@ set_hc_result(xine_health_check_t* hc, int state, const char *format, ...)
}
va_start(args, format);
- vasprintf (&buf, format, args);
+ if (vasprintf (&buf, format, args) < 0)
+ buf = NULL;
va_end(args);
if (!buf)