public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo commit in src/patchsets/vlc/1.1.1: 010_all_freetype-font.patch 020_all_check_headers_regexps.patch 300_all_pic.patch 320_all_cachegen.patch 330_all_stack_smash.patch series
@ 2010-07-22  6:22 Alexis Ballier (aballier)
  0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier (aballier) @ 2010-07-22  6:22 UTC (permalink / raw
  To: gentoo-commits

aballier    10/07/22 06:22:07

  Added:                010_all_freetype-font.patch
                        020_all_check_headers_regexps.patch
                        300_all_pic.patch 320_all_cachegen.patch
                        330_all_stack_smash.patch series
  Log:
  patches for 1.1.1 differ from git

Revision  Changes    Path
1.1                  src/patchsets/vlc/1.1.1/010_all_freetype-font.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/010_all_freetype-font.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/010_all_freetype-font.patch?rev=1.1&content-type=text/plain

Index: 010_all_freetype-font.patch
===================================================================
The default font used by VLC does not exists on every system, instead of that,
we use DejaVU, and add it to the dependencies, as anyway many people have that
font installed.

Index: vlc-1.1/modules/misc/freetype.c
===================================================================
--- vlc-1.1.orig/modules/misc/freetype.c
+++ vlc-1.1/modules/misc/freetype.c
@@ -67,8 +67,8 @@
 #define DEFAULT_FONT "/usr/share/fonts/nokia/nosnb.ttf"
 #define FC_DEFAULT_FONT "Nokia Sans Bold"
 #else
-#define DEFAULT_FONT "/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf"
-#define FC_DEFAULT_FONT "Serif Bold"
+#define DEFAULT_FONT "/usr/share/fonts/dejavu/DejaVuSans.ttf"
+#define FC_DEFAULT_FONT "Sans"
 #endif
 
 #if defined(HAVE_FRIBIDI)



1.1                  src/patchsets/vlc/1.1.1/020_all_check_headers_regexps.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/020_all_check_headers_regexps.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/020_all_check_headers_regexps.patch?rev=1.1&content-type=text/plain

Index: 020_all_check_headers_regexps.patch
===================================================================
This fixes weird check_headers failures when it also matches things like 'const' which are obviously allowed in the public headers and cause check failures due to these false positives.
---
 src/check_headers |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Index: vlc-1.1/src/check_headers
===================================================================
--- vlc-1.1.orig/src/check_headers
+++ vlc-1.1/src/check_headers
@@ -6,7 +6,7 @@ cd "$(dirname "$0")" || exit $?
 # Look for configure #defines in public headers.
 # There are incorrect, as external users don't have our <config.h>.
 regexp="$(cat ../config.h.in | \
-	sed -n -e 's/^#undef \([A-Z0-9_]*\)$/\1/p' | \
+	sed -n -e 's/^#undef \([[:upper:][:digit:]_]*\)$/\1/p' | \
 	grep -v 'WORDS_BIGENDIAN' | \
 	xargs | \
 	sed -e 's/ /\\\|/g')"



1.1                  src/patchsets/vlc/1.1.1/300_all_pic.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/300_all_pic.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/300_all_pic.patch?rev=1.1&content-type=text/plain

Index: 300_all_pic.patch
===================================================================
Index: vlc-1.1/libs/loader/module.c
===================================================================
--- vlc-1.1.orig/libs/loader/module.c
+++ vlc-1.1/libs/loader/module.c
@@ -63,8 +63,8 @@
 
 #ifdef EMU_QTX_API
 #include "wrapper.h"
-static int report_func(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags);
-static int report_func_ret(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags);
+int report_func(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags);
+int report_func_ret(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags);
 #endif
 
 //#undef TRACE
@@ -572,8 +572,6 @@ HMODULE WINAPI LoadLibraryExA(LPCSTR lib
 	    fprintf(stderr,"QuickTime.qts patched!!! old entry=%p\n",ptr[0]);
 
 #ifdef EMU_QTX_API
-	    report_entry = report_func;
-	    report_ret   = report_func_ret;
 	    wrapper_target=ptr[0];
 	    ptr[0]=wrapper;
 #endif
@@ -754,7 +752,7 @@ static int dump_component(char* name,int
 static uint32_t ret_array[4096];
 static int ret_i=0;
 
-static int report_func(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags)
+int report_func(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags)
 {
 #ifdef DEBUG_QTX_API
   int i;
@@ -953,7 +951,7 @@ static int report_func(void *stack_base,
     return 0;
 }
 
-static int report_func_ret(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags)
+int report_func_ret(void *stack_base, int stack_size, reg386_t *reg, uint32_t *flags)
 {
   int i;
   short err;
@@ -1066,8 +1064,6 @@ FARPROC MODULE_GetProcAddress(
 //      || !strcmp(function,"_CallComponent")
       ){
 	fprintf(stderr,"theQuickTimeDispatcher catched -> %p\n",retproc);
-      report_entry = report_func;
-      report_ret   = report_func_ret;
       wrapper_target=(void(*)(void))retproc;
       retproc=(FARPROC)wrapper;
     }
Index: vlc-1.1/libs/loader/stubs.s
===================================================================
--- vlc-1.1.orig/libs/loader/stubs.s
+++ vlc-1.1/libs/loader/stubs.s
@@ -33,3 +33,6 @@ exp_EH_prolog:
 	leal  12(%esp), %ebp
 	pushl %eax
 	ret
+
+.section .note.GNU-stack,"",@progbits
+
Index: vlc-1.1/libs/loader/wrapper.S
===================================================================
--- vlc-1.1.orig/libs/loader/wrapper.S
+++ vlc-1.1/libs/loader/wrapper.S
@@ -1,17 +1,19 @@
 .section .data
-.globl caller_return
 caller_return:
 	.long 0
-.globl report_entry
-report_entry:
-	.long null_call
-.globl report_ret
-report_ret:	
-	.long null_call
 .global wrapper_target
 wrapper_target:	
 	.long null_call
 
+#undef __i686 /* gcc define gets in our way */
+	.section .gnu.linkonce.t.__i686.get_pc_thunk.bx,"ax",@progbits
+.globl __i686.get_pc_thunk.bx
+	.hidden	__i686.get_pc_thunk.bx
+	.type	__i686.get_pc_thunk.bx,@function
+__i686.get_pc_thunk.bx:
+	movl (%esp), %ebx
+	ret
+
 .section .text
 .globl null_call
 	.type null_call, @function
@@ -22,46 +24,60 @@ null_call:
 	.type wrapper, @function
 	.balign 16,0x90
 wrapper:
+	pushl $0
 	pusha			# store registers (EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI) 
 	pushf			# store flags
 	
 	push %ebp		# set up a stack frame 
 	movl %esp, %ebp
 
+	call __i686.get_pc_thunk.bx
+	addl $_GLOBAL_OFFSET_TABLE_, %ebx
+
 	leal 4(%ebp), %eax	# push flags addr
 	push %eax
 	leal 8(%ebp), %eax	# push registers addr
 	push %eax
-	
-	leal 40(%ebp), %edx	
+
+	leal 44(%ebp), %edx	
 	movl (%ebp), %eax
 	subl %edx, %eax
 	push %eax
 	push %edx
-	
-	call *report_entry	# report entry
-	
+
+	call report_func@PLT	# report entry
+
 	test %eax, %eax
 	jnz .Ldone
 
+	movl 44(%ebp), %eax	# switch return addresses
+	movl %eax, caller_return@GOTOFF(%ebx)
+	leal .Lwrapper_return@GOTOFF(%ebx), %eax
+	movl %eax, 40(%ebp)
+
+	movl wrapper_target@GOTOFF(%ebx), %eax
+	mov %eax, 40(%ebp)	# wrapper_target should return at .Lwrapper_return
+
 	leave			# restore %esp, %ebp
 	popf			# restore flags
 	popa			# restore registers
-	
-	popl caller_return	# switch return addresses
-	pushl $.Lwrapper_return 
-	
-	jmp *wrapper_target	# wrapper_target should return at .Lwrapper_return
+
+	ret
 
 	.balign 16, 0x90
 .Lwrapper_return:	
-	pushl caller_return	# restore the original return address
+	pushl $0		# restore the original return address
 	pusha			# more for reference sake here
 	pushf
 	
 	push %ebp		# set up a stack frame
 	movl %esp, %ebp
 
+	call __i686.get_pc_thunk.bx
+	addl $_GLOBAL_OFFSET_TABLE_, %ebx
+	movl caller_return@GOTOFF(%ebx), %eax
+	movl %eax, 40(%ebp)	# restore the original return address
+
 	leal 4(%ebp), %eax	# push flags addr
 	push %eax
 	leal 8(%ebp), %eax	# push registers addr
@@ -73,11 +89,13 @@ wrapper:
 	push %eax
 	push %edx
 
-	call *report_ret	# report the return information (same args)
+	call report_func_ret@PLT# report the return information (same args)
 .Ldone:	
 
 	leave
 	popf
 	popa
 	ret
-	
+
+.section .note.GNU-stack,"",@progbits
+
Index: vlc-1.1/libs/loader/wrapper.h
===================================================================
--- vlc-1.1.orig/libs/loader/wrapper.h
+++ vlc-1.1/libs/loader/wrapper.h
@@ -7,10 +7,6 @@ typedef struct {
   uint32_t edi, esi, ebp, esp, ebx, edx, ecx, eax;
 } reg386_t;
 
-typedef int (*wrapper_func_t)(void *stack_base, int stack_size, reg386_t *reg,  uint32_t *flags);
-
-extern wrapper_func_t report_entry, report_ret;
-
 extern void (*wrapper_target)(void);
 
 extern int wrapper(void);
Index: vlc-1.1/libs/loader/Makefile.am
===================================================================
--- vlc-1.1.orig/libs/loader/Makefile.am
+++ vlc-1.1/libs/loader/Makefile.am
@@ -14,7 +14,7 @@ noinst_LTLIBRARIES = libloader.la
 # TODO: real check for vsscanf() and <sys/mmap.h>
 AM_CPPFLAGS = -D__WINE__ -DHAVE_SYS_MMAN_H=1 -DHAVE_VSSCANF=1 \
 	-DWIN32_PATH=\"\" -DTRACE\(...\)=\(void\)0
-AM_CFLAGS = -fno-PIC `$(top_builddir)/vlc-config --cflags libs` -U_FILE_OFFSET_BITS \
+AM_CFLAGS = -fPIC `$(top_builddir)/vlc-config --cflags libs` -U_FILE_OFFSET_BITS \
 	-fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
 
 noinst_HEADERS = com.h driver.h ext.h ldt_keeper.h loader.h registry.h \



1.1                  src/patchsets/vlc/1.1.1/320_all_cachegen.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/320_all_cachegen.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/320_all_cachegen.patch?rev=1.1&content-type=text/plain

Index: 320_all_cachegen.patch
===================================================================
Do not try to generate the plugin cache at build time. We will handle this in
pkg_postinst

Index: vlc-1.1/modules/Makefile.am
===================================================================
--- vlc-1.1.orig/modules/Makefile.am
+++ vlc-1.1/modules/Makefile.am
@@ -62,16 +62,4 @@ MOSTLYCLEANFILES = stamp-cache plugins-*
 .PHONY: stamp-cache
 
 stamp-cache:
-	$(AM_V_GEN)if test "$(build)" = "$(host)"; then \
-		../bin/vlc-cache-gen$(EXEEXT) . ; \
-	else \
-		echo "Cross-compilation: cache generation skipped!" ; \
-	fi
 	$(AM_V_at)touch stamp-cache
-
-install-exec-hook:
-	if test -z "$(DESTDIR)"; then \
-		../bin/vlc-cache-gen$(EXEEXT) "$(vlclibdir)/plugins" ; \
-	else \
-		echo "Staged installation: cache generation skipped!" ; \
-	fi



1.1                  src/patchsets/vlc/1.1.1/330_all_stack_smash.patch

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/330_all_stack_smash.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/330_all_stack_smash.patch?rev=1.1&content-type=text/plain

Index: 330_all_stack_smash.patch
===================================================================
commit 4332f5b4071f1cf3f459b3883e1fa1a11c0e58c2
Author: Tristan Heaven <tristanheaven@gmail.com>
Date:   Tue Jul 20 11:50:09 2010 +0100

    qt4: Fix stack smash in InputManager::UpdateVout
    
    From http://bugs.gentoo.org/show_bug.cgi?id=328969
    
    Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>

Index: vlc-1.1/modules/gui/qt4/input_manager.cpp
===================================================================
--- vlc-1.1.orig/modules/gui/qt4/input_manager.cpp
+++ vlc-1.1/modules/gui/qt4/input_manager.cpp
@@ -568,7 +568,7 @@ void InputManager::UpdateVout()
     if( hasInput() )
     {
         /* Get current vout lists from input */
-        int i_vout;
+        size_t i_vout;
         vout_thread_t **pp_vout;
         if( input_Control( p_input, INPUT_GET_VOUTS, &pp_vout, &i_vout ) )
         {



1.1                  src/patchsets/vlc/1.1.1/series

file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/series?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/vlc/1.1.1/series?rev=1.1&content-type=text/plain

Index: series
===================================================================
010_all_freetype-font.patch
020_all_check_headers_regexps.patch
300_all_pic.patch
320_all_cachegen.patch
330_all_stack_smash.patch






^ permalink raw reply	[flat|nested] 2+ messages in thread

* [gentoo-commits] gentoo commit in src/patchsets/vlc/1.1.1: 010_all_freetype-font.patch 020_all_check_headers_regexps.patch 300_all_pic.patch 320_all_cachegen.patch 330_all_stack_smash.patch series
@ 2010-08-02 11:13 Alexis Ballier (aballier)
  0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier (aballier) @ 2010-08-02 11:13 UTC (permalink / raw
  To: gentoo-commits

aballier    10/08/02 11:13:42

  Removed:              010_all_freetype-font.patch
                        020_all_check_headers_regexps.patch
                        300_all_pic.patch 320_all_cachegen.patch
                        330_all_stack_smash.patch series
  Log:
  old patchset



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-08-02 12:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-02 11:13 [gentoo-commits] gentoo commit in src/patchsets/vlc/1.1.1: 010_all_freetype-font.patch 020_all_check_headers_regexps.patch 300_all_pic.patch 320_all_cachegen.patch 330_all_stack_smash.patch series Alexis Ballier (aballier)
  -- strict thread matches above, loose matches on Subject: below --
2010-07-22  6:22 Alexis Ballier (aballier)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox