Prevent excessive clipping in SysListView32

Ulrich Weigand weigand at immd1.informatik.uni-erlangen.de
Thu Jul 26 16:24:31 CDT 2001


Uwe Bonnes wrote:
> >>>>> "Medland," == Medland, Bill <Bill.Medland at accpac.com> writes:
> 
>     Medland,> I am not very comfortable with this one but strange as it may
>     Medland,> seem it solves the problem.  I'd love to know why.
>     Medland,> <<diff13.txt>> Bill Medland (medbi01 at accpac.com) Prevents
>     Medland,> excessive clipping in SysListView32.
> 
>     Medland,>
>     Medland,>-static inline int perfect_graphics(void)
>     Medland,>+static int perfect_graphics(void)       
>     Medland,> {                                       
>     Medland,>     static int perfect = -1;            
>     Medland,>     if (perfect == -1)                  
>     Medland,>
> 
> Some C-Expert is requested here, but I suspect that in the old function the
> variable "perfect" was created in every instantiation of the
> "perfect_graphics" inlined function. Could you perhaps try to declare the
> "perfect" outside the inlined function, like
> 
> static int perfect = -1; 
> static inline int perfect_graphics(void)

No, 'inline' must not change the semantics of the routine in any way,
including static variables.

If the app behaves differently when 'perfect_graphics' is inlined, this
is a compiler bug.  Which compiler version are you using?

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  weigand at informatik.uni-erlangen.de




More information about the wine-devel mailing list