Could you please provide an example test case that shows how it breaks? 
I really don't understand what's going on there.

I understand your issue, and how it "got fixed", but resetting some of 
the fields of a still referenced structure looks wrong to me.

--
Tom.

On 06/04/13 02:05, Jiyoun Park wrote:
> Hello~ Tom.
>
> I modified this because text rendering issue.
> there was an issue text disapeared when we change font style.
> it is becuase evas discard FT_Size object in font int free, but font
> source still get current size,
> so it din't called FT_Activate_Size later. (ex:
> evas_common_font_ascent_get, evas_common_font_descent_get ...)
>
> as I know, font source current size can be changed when we change active size
> so I changed font source current size to 0 in font source free because
> that function always called after destroying font source size object.
>
> _evas_common_font_int_free
>      - FT_Done_Size(fi->ft.size);
>      - evas_common_font_source_free
>             -> change font source current size
>
>
> .....
> evas_common_font_ascent_get
>     -   check src current size
>     -   FT_Activate_Size(fi->ft.size);
>
>
> but if there is more good place to change src current size to 0, plz
> recomend it for me~~
> thank you~
>
> 2013/4/5 Tom Hacohen <[email protected]>:
>> Hey Jiyoun,
>>
>> This looks wrong, specifically resetting the current_size before the
>> return instead of after. What made you change that?
>>
>> Cheers,
>> Tom.
>>
>> On 05/04/13 05:07, Jiyoun Park - Enlightenment Git wrote:
>>> jypark pushed a commit to branch master.
>>>
>>> commit 810f1ca9723de19c0ea6d9baa879b91c573a8ba6
>>> Author: Jiyoun Park <[email protected]>
>>> Date:   Fri Apr 5 13:05:25 2013 +0900
>>>
>>>       Evas font: fix font source have wrong current size.
>>> ---
>>>    ChangeLog                            | 4 ++++
>>>    NEWS                                 | 2 ++
>>>    src/lib/evas/common/evas_font_load.c | 3 +++
>>>    3 files changed, 9 insertions(+)
>>>
>>> diff --git a/ChangeLog b/ChangeLog
>>> index 86a88dd..0191b26 100644
>>> --- a/ChangeLog
>>> +++ b/ChangeLog
>>> @@ -1,3 +1,7 @@
>>> +2013-04-04  Jiyoun Park
>>> +
>>> +        * Evas font: fix font source have wrong current size.
>>> +
>>>    2013-04-04  Tom Hacohen
>>>
>>>            * Evas font: If OS/2 table is available and the font is 
>>> demi-bold,
>>> diff --git a/NEWS b/NEWS
>>> index a1cda47..8b3fd69 100644
>>> --- a/NEWS
>>> +++ b/NEWS
>>> @@ -222,3 +222,5 @@ Fixes:
>>>        * Fix evas buffer engine allocation with non alpha output
>>>        * Evas font: click on left/right half of char does matter now.
>>>        * Evas font: If OS/2 table is available and the font is demi-bold, 
>>> don't do runtime emboldment.
>>> +    * Evas font: fix font source have wrong current size.
>>> +
>>> diff --git a/src/lib/evas/common/evas_font_load.c 
>>> b/src/lib/evas/common/evas_font_load.c
>>> index 9bdb10f..97dfb17 100644
>>> --- a/src/lib/evas/common/evas_font_load.c
>>> +++ b/src/lib/evas/common/evas_font_load.c
>>> @@ -75,7 +75,9 @@ _evas_common_font_source_free(RGBA_Font_Source *fs)
>>>    static void
>>>    _evas_common_font_int_free(RGBA_Font_Int *fi)
>>>    {
>>> +   FTLOCK();
>>>       FT_Done_Size(fi->ft.size);
>>> +   FTUNLOCK();
>>>
>>>       evas_common_font_int_modify_cache_by(fi, -1);
>>>       _evas_common_font_int_clear(fi);
>>> @@ -265,6 +267,7 @@ EAPI void
>>>    evas_common_font_source_free(RGBA_Font_Source *fs)
>>>    {
>>>       fs->references--;
>>> +   fs->current_size = 0;
>>>       if (fs->references > 0) return;
>>>       eina_hash_del(fonts_src, fs->name, fs);
>>>    }
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> Minimize network downtime and maximize team effectiveness.
>> Reduce network management and security costs.Learn how to hire
>> the most talented Cisco Certified professionals. Visit the
>> Employer Resources Portal
>> http://www.cisco.com/web/learning/employer_resources/index.html
>> _______________________________________________
>> enlightenment-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
> ------------------------------------------------------------------------------
> Minimize network downtime and maximize team effectiveness.
> Reduce network management and security costs.Learn how to hire
> the most talented Cisco Certified professionals. Visit the
> Employer Resources Portal
> http://www.cisco.com/web/learning/employer_resources/index.html
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>


------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to