26 lines
854 B
Diff
26 lines
854 B
Diff
diff --git a/libmpcodecs/dec_video.c b/libmpcodecs/dec_video.c
|
|
index c12a3b9..25aaf0d 100755
|
|
--- a/libmpcodecs/dec_video.c
|
|
+++ b/libmpcodecs/dec_video.c
|
|
@@ -427,6 +427,8 @@ void *decode_video(sh_video_t *sh_video, unsigned char *start, int in_size,
|
|
if (correct_pts && mpi && drop_frame && sh_video->num_buffered_pts > 0)
|
|
sh_video->num_buffered_pts--;
|
|
|
|
+#ifndef __LCC__
|
|
+#ifdef __x86_64__
|
|
// some codecs are broken, and doesn't restore MMX state :(
|
|
// it happens usually with broken/damaged files.
|
|
if (HAVE_AMD3DNOW_INLINE && gCpuCaps.has3DNow) {
|
|
@@ -434,6 +436,8 @@ void *decode_video(sh_video_t *sh_video, unsigned char *start, int in_size,
|
|
} else if (HAVE_MMX_INLINE && gCpuCaps.hasMMX) {
|
|
__asm__ volatile ("emms\n\t":::"memory");
|
|
}
|
|
+#endif
|
|
+#endif
|
|
|
|
t2 = GetTimer();
|
|
t = t2 - t;
|
|
--
|
|
2.16.4
|
|
|