bugThe FreeType Project - Bugs: bug #28483, library interface version not...

 
 

bug #28483: library interface version not updated when new functions added

Submitted by:  Daniel Macks <dmacks>
Submitted on:  Tue 05 Jan 2010 01:05:36 AM UTC  
 
Severity: 4 - ImportantItem Group: Incorrect behaviour
Status: FixedPrivacy: Public
Assigned to: Werner LEMBERG <wl>Open/Closed: Closed
Planned Release: 2.3.12

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Wed 20 Jan 2010 07:30:09 AM UTC, comment #3:

My answer is `soon'. If time permits, I'll do a release; I hope this will happen within, say, a few weeks.

Werner LEMBERG <wl>
Project AdministratorIn charge of this item.
Wed 20 Jan 2010 07:00:32 AM UTC, comment #2:

No worries:)

Is there an ETA for this next release? I'm a Fink project-manager, trying to plan our near-future update cycles.

Daniel Macks <dmacks>
Tue 05 Jan 2010 07:57:51 AM UTC, comment #1:

Doh, how embarassing!

Thanks for the pointer. I'll release a new version in the next time, fixing this.

Werner LEMBERG <wl>
Project AdministratorIn charge of this item.
Tue 05 Jan 2010 01:05:36 AM UTC, original submission:

Going from freetype-2.3.8 to freetype-2.3.9, new public functions appear to have been added to ftcid.h:

FT_Get_CID_Is_Internally_CID_Keyed
FT_Get_CID_From_Glyph_Index

however, version_info in builds/unix/configure.ac has not been updated properly for this API addition (and still wrong as of freetype-2.3.11, which is same API as 2.3.9). The C:R:A triplet has had its R field incremented for each release, which is only correct when the API is the same as previous release. According to libtool's documentation for the -version-info flag:

3. If the library source code has changed at all since the last update, then increment REVISION (`C:R:A' becomes `C:r+1:A').

4. If any interfaces have been added, removed, or changed since the last update, increment CURRENT, and set REVISION to 0.

5. If any interfaces have been added since the last public release, then increment AGE.

2.3.8 was 9:19:3, so 2.3.9 should have been 10:0:4 rather than 9.20.3.

This actually has a visible effect if a program is compiled and linked against the new lib and uses the new API, but is run on a system with the old lib (either sysadmin downgraded it or user copied binary to an older system). If version-info is set correctly, the error message will be that the freetype library version is too old (and will even state what the minimum needed one is). If version-info is not updated properly for new API, the error message is the less helpful "undefined symbol", with no hint about why or how to find a lib that would have it.

Daniel Macks <dmacks>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by wl (Posted a comment)
  • -unavailable- added by dmacks (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 7 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Thu 18 Feb 2010 04:11:05 PM UTCwlStatusIn Progress=>Fixed
      Open/ClosedOpen=>Closed
    Tue 05 Jan 2010 07:57:51 AM UTCwlSeverity3 - Normal=>4 - Important
      Item GroupNone=>Incorrect behaviour
      StatusNone=>In Progress
      Assigned toNone=>wl
      Planned ReleaseNone=>2.3.12

    Back to the top


    Powered by Savane 3.1-cleanup1