On Mon, 16 Apr 2012 10:31:39 +0200, Diego Biurrun <[email protected]> wrote:
> On Mon, Apr 16, 2012 at 09:47:50AM +0200, Anton Khirnov wrote:
> > 
> > On Thu, 05 Apr 2012 17:16:48 +0200, Diego Biurrun <[email protected]> wrote:
> > > 
> > > --- a/libavcodec/Makefile
> > > +++ b/libavcodec/Makefile
> > > --- a/libavcodec/dv.c
> > > +++ b/libavcodec/dv.c
> 
> [... 750 lines of uselessly quoted text ...]
> 
> Please snip your quotes, thank you.

Sorry, forgot.

> 
> > > --- a/libavcodec/dv_tablegen.h
> > > +++ b/libavcodec/dv_tablegen.h
> > > @@ -28,25 +28,11 @@
> > >  #include "dv_vlc_data.h"
> > >  
> > >  #if CONFIG_HARDCODED_TABLES
> > >  #define dv_vlc_map_tableinit()
> > >  #include "libavcodec/dv_tables.h"
> > >  #else
> > > -static struct dv_vlc_pair 
> > > dv_vlc_map[DV_VLC_MAP_RUN_SIZE][DV_VLC_MAP_LEV_SIZE];
> > > +struct dv_vlc_pair dv_vlc_map[DV_VLC_MAP_RUN_SIZE][DV_VLC_MAP_LEV_SIZE];
> > >  
> > 
> > This looks suspicious. A non-static table in a header. It will be
> > duplicated in each place the header is included in (git grep says dv.c
> > and dv_tablegen.c) and it will be a public symbol. Does that even
> > work? I'd expect the linker to complain.
> 
> dv_tablegen.c is a separate program.

Even so, this file might get included somewhere and silently force a
second public copy of this table on someone. What is the reason for this
change anyway?


-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to