diff options
author | adam <adam@pkgsrc.org> | 2004-04-29 14:39:23 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2004-04-29 14:39:23 +0000 |
commit | 2191c22f424a936c4a5efd57d3aeace6f0fe12a0 (patch) | |
tree | 5342143e7acb545fcd525ed6efcfd224aaa4de89 | |
parent | e27323598c9f33f638cd7958a4f59ded5bba5303 (diff) | |
download | pkgsrc-2191c22f424a936c4a5efd57d3aeace6f0fe12a0.tar.gz |
Fixed problems with the new freetype2 library
-rw-r--r-- | www/mozilla/distinfo | 9 | ||||
-rw-r--r-- | www/mozilla/patches/patch-ah | 48 | ||||
-rw-r--r-- | www/mozilla/patches/patch-ai | 62 | ||||
-rw-r--r-- | www/mozilla/patches/patch-aj | 40 | ||||
-rw-r--r-- | www/mozilla/patches/patch-ak | 61 | ||||
-rw-r--r-- | www/mozilla/patches/patch-al | 22 | ||||
-rw-r--r-- | www/mozilla/patches/patch-an | 13 | ||||
-rw-r--r-- | www/mozilla/patches/patch-ao | 75 |
8 files changed, 329 insertions, 1 deletions
diff --git a/www/mozilla/distinfo b/www/mozilla/distinfo index a880bb2df9f..fa136e01fcc 100644 --- a/www/mozilla/distinfo +++ b/www/mozilla/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.53 2004/04/24 10:36:15 grant Exp $ +$NetBSD: distinfo,v 1.54 2004/04/29 14:39:23 adam Exp $ SHA1 (mozilla-source-1.6.tar.bz2) = baecca0ecec35704049ab6debaec6c96adbade35 Size (mozilla-source-1.6.tar.bz2) = 31037452 bytes @@ -9,7 +9,14 @@ SHA1 (patch-ad) = 5408db4b7585dcf5855f64a342cc721a23aec449 SHA1 (patch-ae) = e10936ff84d8f5b631c5c9f18271f21e902ea351 SHA1 (patch-af) = 8fcedb0bdd48f9527fff8c9b970a0e6ea68711e4 SHA1 (patch-ag) = c52586f92fc801571ccaf5a80c081103a99ed4e7 +SHA1 (patch-ah) = d047cad352d83aacb76321ee499184ae81fc9b40 +SHA1 (patch-ai) = bc3f841e16ca81962cfe5d082527bc3891c7d8b2 +SHA1 (patch-aj) = e1fd4c748b344507eb580d2efab3b2be625b64e5 +SHA1 (patch-ak) = d47b4b2904e91eaf6b6042c20594db5e559d126d +SHA1 (patch-al) = bd326a62794a5665dd929b59a96c24fbac51a1a3 SHA1 (patch-am) = 6646e8f1e5dbc3532ba45945ad2054756de2186a +SHA1 (patch-an) = 78b448a64c2a46bc3a1d458bdbcb5d64be1ed9f4 +SHA1 (patch-ao) = 7048e3a06d1569e31d2350c2473887a50aa81498 SHA1 (patch-aw) = 5beeefa214a3003a74ccc68776a97a414c6acff1 SHA1 (patch-ax) = 070c88dee0446b093ab1c2a9120dc1747642d46f SHA1 (patch-ba) = e11ab3e2baa19c9db9e320868a9860fedf5c8cec diff --git a/www/mozilla/patches/patch-ah b/www/mozilla/patches/patch-ah new file mode 100644 index 00000000000..e0ef7377dc6 --- /dev/null +++ b/www/mozilla/patches/patch-ah @@ -0,0 +1,48 @@ +$NetBSD: patch-ah,v 1.8 2004/04/29 14:39:47 adam Exp $ + +--- gfx/idl/nsIFreeType2.idl.orig 2004-04-29 10:46:15.000000000 +0000 ++++ gfx/idl/nsIFreeType2.idl +@@ -72,10 +72,11 @@ native FT_Pointer(FT_Pointer); + native FT_Sfnt_Tag(FT_Sfnt_Tag); + native FT_Size(FT_Size); + +-[ptr] native FTC_Image_Desc_p(FTC_Image_Desc); ++[ptr] native FTC_ImageType_p(FTC_ImageType); + native FTC_Face_Requester(FTC_Face_Requester); + native FTC_Font(FTC_Font); +-native FTC_Image_Cache(FTC_Image_Cache); ++native FTC_FaceID(FTC_FaceID); ++native FTC_ImageCache(FTC_ImageCache); + native FTC_Manager(FTC_Manager); + + /* +@@ -87,7 +88,7 @@ interface nsIFreeType2 : nsISupports + + readonly attribute FT_Library library; + readonly attribute FTC_Manager FTCacheManager; +- readonly attribute FTC_Image_Cache ImageCache; ++ readonly attribute FTC_ImageCache ImageCache; + + void doneFace(in FT_Face face); + void doneFreeType(in FT_Library lib); +@@ -103,16 +104,16 @@ interface nsIFreeType2 : nsISupports + void outlineDecompose(in FT_Outline_p outline, + in const_FT_Outline_Funcs_p funcs, in voidPtr p); + void setCharmap(in FT_Face face, in FT_CharMap charmap); +- void imageCacheLookup(in FTC_Image_Cache cache, in FTC_Image_Desc_p desc, ++ void imageCacheLookup(in FTC_ImageCache cache, in FTC_ImageType_p desc, + in FT_UInt gindex, out FT_Glyph glyph); +- void managerLookupSize(in FTC_Manager manager, in FTC_Font font, +- out FT_Face face, out FT_Size size); ++ void managerLookupFace(in FTC_Manager manager, in FTC_FaceID face_id, ++ out FT_Face face); + void managerDone(in FTC_Manager manager); + void managerNew(in FT_Library lib, in FT_UInt max_faces, + in FT_UInt max_sizes, in FT_ULong max_bytes, + in FTC_Face_Requester requester, in FT_Pointer req_data, + out FTC_Manager manager); +- void imageCacheNew(in FTC_Manager manager, out FTC_Image_Cache cache); ++ void imageCacheNew(in FTC_Manager manager, out FTC_ImageCache cache); + + FT_ULong getFirstChar(in FT_Face face, out FT_UInt gindex); + FT_ULong getNextChar(in FT_Face face, in FT_ULong charcode, out FT_UInt gindex); diff --git a/www/mozilla/patches/patch-ai b/www/mozilla/patches/patch-ai new file mode 100644 index 00000000000..f0ad17ce2d0 --- /dev/null +++ b/www/mozilla/patches/patch-ai @@ -0,0 +1,62 @@ +$NetBSD: patch-ai,v 1.8 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/ps/nsFontMetricsPS.cpp.orig 2004-04-29 11:18:03.000000000 +0000 ++++ gfx/src/ps/nsFontMetricsPS.cpp +@@ -1126,10 +1126,10 @@ nsFontPSFreeType::Init(nsITrueTypeFontCa + + mPixelSize = NSToIntRound(app2dev * mFont->size); + +- mImageDesc.font.face_id = (void*)mEntry; +- mImageDesc.font.pix_width = mPixelSize; +- mImageDesc.font.pix_height = mPixelSize; +- mImageDesc.image_type = 0; ++ mImageDesc->face_id = (FTC_FaceID)&mEntry; ++ mImageDesc->width = mPixelSize; ++ mImageDesc->height = mPixelSize; ++ mImageDesc->flags = 0; + + nsresult rv; + mFt2 = do_GetService(NS_FREETYPE2_CONTRACTID, &rv); +@@ -1175,7 +1175,7 @@ nsFontPSFreeType::GetWidth(const PRUnich + if (!face) + return 0; + +- FTC_Image_Cache iCache; ++ FTC_ImageCache iCache; + nsresult rv = mFt2->GetImageCache(&iCache); + if (NS_FAILED(rv)) { + NS_ERROR("Failed to get Image Cache"); +@@ -1213,8 +1213,8 @@ nsFontPSFreeType::getFTFace() + + FTC_Manager cManager; + mFt2->GetFTCacheManager(&cManager); +- nsresult rv = mFt2->ManagerLookupSize(cManager, &mImageDesc.font, +- &face, nsnull); ++ nsresult rv = mFt2->ManagerLookupFace(cManager, mImageDesc->face_id, ++ &face); + NS_ASSERTION(rv==0, "failed to get face/size"); + if (rv) + return nsnull; +@@ -1609,16 +1609,16 @@ void nsFT2Type8Generator::GeneratePSFont + mEntry->GetFamilyName(fontName); + mEntry->GetStyleName(styleName); + +- mImageDesc.font.face_id = (void*)mEntry; ++ mImageDesc->face_id = (FTC_FaceID)&mEntry; + // TT glyph has no relation to size +- mImageDesc.font.pix_width = 16; +- mImageDesc.font.pix_height = 16; +- mImageDesc.image_type = 0; ++ mImageDesc->width = 16; ++ mImageDesc->height = 16; ++ mImageDesc->flags = 0; + FT_Face face = nsnull; + FTC_Manager cManager; + mFt2->GetFTCacheManager(&cManager); +- nsresult rv = mFt2->ManagerLookupSize(cManager, &mImageDesc.font, +- &face, nsnull); ++ nsresult rv = mFt2->ManagerLookupFace(cManager, mImageDesc->face_id, ++ &face); + if (NS_FAILED(rv)) + return; + diff --git a/www/mozilla/patches/patch-aj b/www/mozilla/patches/patch-aj new file mode 100644 index 00000000000..287e6c82abd --- /dev/null +++ b/www/mozilla/patches/patch-aj @@ -0,0 +1,40 @@ +$NetBSD: patch-aj,v 1.9 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/freetype/nsFreeType.h.orig 2003-06-11 18:15:22.000000000 +0000 ++++ gfx/src/freetype/nsFreeType.h +@@ -104,13 +104,13 @@ typedef FT_Error (*FT_Outline_Decompose_ + typedef FT_Error (*FT_New_Face_t)(FT_Library, const char*, FT_Long, FT_Face*); + typedef FT_Error (*FT_Set_Charmap_t)(FT_Face face, FT_CharMap charmap); + typedef FT_Error (*FTC_Image_Cache_Lookup_t) +- (FTC_Image_Cache, FTC_Image_Desc*, FT_UInt, FT_Glyph*); +-typedef FT_Error (*FTC_Manager_Lookup_Size_t) +- (FTC_Manager, FTC_Font, FT_Face*, FT_Size*); ++ (FTC_ImageCache, FTC_ImageType*, FT_UInt, FT_Glyph*); ++typedef FT_Error (*FTC_Manager_LookupFace_t) ++ (FTC_Manager, FTC_FaceID, FT_Face*); + typedef FT_Error (*FTC_Manager_Done_t)(FTC_Manager); + typedef FT_Error (*FTC_Manager_New_t)(FT_Library, FT_UInt, FT_UInt, FT_ULong, + FTC_Face_Requester, FT_Pointer, FTC_Manager*); +-typedef FT_Error (*FTC_Image_Cache_New_t)(FTC_Manager, FTC_Image_Cache*); ++typedef FT_Error (*FTC_Image_Cache_New_t)(FTC_Manager, FTC_ImageCache*); + + typedef FT_ULong (*FT_Get_First_Char_t)(FT_Face, FT_UInt*); + typedef FT_ULong (*FT_Get_Next_Char_t)(FT_Face, FT_ULong, FT_UInt*); +@@ -157,7 +157,7 @@ protected: + FT_Outline_Decompose_t nsFT_Outline_Decompose; + FT_Set_Charmap_t nsFT_Set_Charmap; + FTC_Image_Cache_Lookup_t nsFTC_Image_Cache_Lookup; +- FTC_Manager_Lookup_Size_t nsFTC_Manager_Lookup_Size; ++ FTC_Manager_LookupFace_t nsFTC_Manager_LookupFace; + FTC_Manager_Done_t nsFTC_Manager_Done; + FTC_Manager_New_t nsFTC_Manager_New; + FTC_Image_Cache_New_t nsFTC_Image_Cache_New; +@@ -195,7 +195,7 @@ protected: + PRLibrary *mSharedLib; + FT_Library mFreeTypeLibrary; + FTC_Manager mFTCacheManager; +- FTC_Image_Cache mImageCache; ++ FTC_ImageCache mImageCache; + + static nsHashtable *sFontFamilies; + static nsHashtable *sRange1CharSetNames; diff --git a/www/mozilla/patches/patch-ak b/www/mozilla/patches/patch-ak new file mode 100644 index 00000000000..b2ee7a714a5 --- /dev/null +++ b/www/mozilla/patches/patch-ak @@ -0,0 +1,61 @@ +$NetBSD: patch-ak,v 1.10 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/freetype/nsFreeType.cpp.orig 2003-09-07 22:20:37.000000000 +0000 ++++ gfx/src/freetype/nsFreeType.cpp +@@ -110,11 +110,11 @@ FtFuncList nsFreeType2::FtFuncs [] = { + {"FT_New_Face", NS_FT2_OFFSET(nsFT_New_Face), PR_TRUE}, + {"FT_Outline_Decompose", NS_FT2_OFFSET(nsFT_Outline_Decompose), PR_TRUE}, + {"FT_Set_Charmap", NS_FT2_OFFSET(nsFT_Set_Charmap), PR_TRUE}, +- {"FTC_Image_Cache_Lookup", NS_FT2_OFFSET(nsFTC_Image_Cache_Lookup), PR_TRUE}, +- {"FTC_Manager_Lookup_Size", NS_FT2_OFFSET(nsFTC_Manager_Lookup_Size), PR_TRUE}, ++ {"FTC_ImageCache_Lookup", NS_FT2_OFFSET(nsFTC_Image_Cache_Lookup), PR_TRUE}, ++ {"FTC_Manager_LookupFace", NS_FT2_OFFSET(nsFTC_Manager_LookupFace), PR_TRUE}, + {"FTC_Manager_Done", NS_FT2_OFFSET(nsFTC_Manager_Done), PR_TRUE}, + {"FTC_Manager_New", NS_FT2_OFFSET(nsFTC_Manager_New), PR_TRUE}, +- {"FTC_Image_Cache_New", NS_FT2_OFFSET(nsFTC_Image_Cache_New), PR_TRUE}, ++ {"FTC_ImageCache_New", NS_FT2_OFFSET(nsFTC_Image_Cache_New), PR_TRUE}, + {"FT_Get_First_Char", NS_FT2_OFFSET(nsFT_Get_First_Char), PR_FALSE}, + {"FT_Get_Next_Char", NS_FT2_OFFSET(nsFT_Get_Next_Char), PR_FALSE}, + {nsnull, 0, 0}, +@@ -276,7 +276,7 @@ nsFreeType2::SetCharmap(FT_Face face, FT + } + + NS_IMETHODIMP +-nsFreeType2::ImageCacheLookup(FTC_Image_Cache cache, FTC_Image_Desc *desc, ++nsFreeType2::ImageCacheLookup(FTC_ImageCache cache, FTC_ImageType *desc, + FT_UInt glyphID, FT_Glyph *glyph) + { + // call the FreeType2 function via the function pointer +@@ -285,11 +285,11 @@ nsFreeType2::ImageCacheLookup(FTC_Image_ + } + + NS_IMETHODIMP +-nsFreeType2::ManagerLookupSize(FTC_Manager manager, FTC_Font font, +- FT_Face *face, FT_Size *size) ++nsFreeType2::ManagerLookupFace(FTC_Manager manager, FTC_FaceID face_id, ++ FT_Face *face) + { + // call the FreeType2 function via the function pointer +- FT_Error error = nsFTC_Manager_Lookup_Size(manager, font, face, size); ++ FT_Error error = nsFTC_Manager_LookupFace(manager, face_id, face); + return error ? NS_ERROR_FAILURE : NS_OK; + } + +@@ -314,7 +314,7 @@ nsFreeType2::ManagerNew(FT_Library libra + } + + NS_IMETHODIMP +-nsFreeType2::ImageCacheNew(FTC_Manager manager, FTC_Image_Cache *cache) ++nsFreeType2::ImageCacheNew(FTC_Manager manager, FTC_ImageCache *cache) + { + // call the FreeType2 function via the function pointer + FT_Error error = nsFTC_Image_Cache_New(manager, cache); +@@ -345,7 +345,7 @@ nsFreeType2::SupportsExtFunc(PRBool *res + } + + NS_IMETHODIMP +-nsFreeType2::GetImageCache(FTC_Image_Cache *aCache) ++nsFreeType2::GetImageCache(FTC_ImageCache *aCache) + { + *aCache = mImageCache; + return NS_OK; diff --git a/www/mozilla/patches/patch-al b/www/mozilla/patches/patch-al new file mode 100644 index 00000000000..c61b5ae4ac2 --- /dev/null +++ b/www/mozilla/patches/patch-al @@ -0,0 +1,22 @@ +$NetBSD: patch-al,v 1.8 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/ps/nsFontMetricsPS.h.orig 2004-04-29 11:13:06.000000000 +0000 ++++ gfx/src/ps/nsFontMetricsPS.h +@@ -320,7 +320,7 @@ protected: + nsCOMPtr<nsITrueTypeFontCatalogEntry> mFaceID; + nsCOMPtr<nsIFreeType2> mFt2; + PRUint16 mPixelSize; +- FTC_Image_Desc mImageDesc; ++ FTC_ImageType mImageDesc; + + + static PRBool AddUserPref(nsIAtom *aLang, const nsFont& aFont, +@@ -363,7 +363,7 @@ public: + protected: + nsCOMPtr<nsITrueTypeFontCatalogEntry> mEntry; + nsCOMPtr<nsIFreeType2> mFt2; +- FTC_Image_Desc mImageDesc; ++ FTC_ImageType mImageDesc; + }; + #endif + diff --git a/www/mozilla/patches/patch-an b/www/mozilla/patches/patch-an new file mode 100644 index 00000000000..a983fda57e0 --- /dev/null +++ b/www/mozilla/patches/patch-an @@ -0,0 +1,13 @@ +$NetBSD: patch-an,v 1.6 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/x11shared/nsFontFreeType.h.orig 2004-04-29 12:34:09.000000000 +0000 ++++ gfx/src/x11shared/nsFontFreeType.h +@@ -110,7 +110,7 @@ protected: + XImage *GetXImage(PRUint32 width, PRUint32 height); + nsITrueTypeFontCatalogEntry *mFaceID; + PRUint16 mPixelSize; +- FTC_Image_Desc mImageDesc; ++ FTC_ImageType mImageDesc; + nsCOMPtr<nsIFreeType2> mFt2; + }; + diff --git a/www/mozilla/patches/patch-ao b/www/mozilla/patches/patch-ao new file mode 100644 index 00000000000..a5d7aad1d9a --- /dev/null +++ b/www/mozilla/patches/patch-ao @@ -0,0 +1,75 @@ +$NetBSD: patch-ao,v 1.4 2004/04/29 14:39:48 adam Exp $ + +--- gfx/src/x11shared/nsFontFreeType.cpp.orig 2004-04-29 12:32:42.000000000 +0000 ++++ gfx/src/x11shared/nsFontFreeType.cpp +@@ -177,7 +177,7 @@ nsFreeTypeFont::getFTFace() + FTC_Manager mgr; + nsresult rv; + mFt2->GetFTCacheManager(&mgr); +- rv = mFt2->ManagerLookupSize(mgr, &mImageDesc.font, &face, nsnull); ++ rv = mFt2->ManagerLookupFace(mgr, mImageDesc->face_id, &face); + NS_ASSERTION(NS_SUCCEEDED(rv), "failed to get face/size"); + if (NS_FAILED(rv)) + return nsnull; +@@ -191,22 +191,15 @@ nsFreeTypeFont::nsFreeTypeFont(nsITrueTy + PRBool embedded_bimap = PR_FALSE; + mFaceID = aFaceID; + mPixelSize = aPixelSize; +- mImageDesc.font.face_id = (void*)mFaceID; +- mImageDesc.font.pix_width = aPixelSize; +- mImageDesc.font.pix_height = aPixelSize; +- mImageDesc.image_type = 0; ++ mImageDesc->face_id = (FTC_FaceID)&mFaceID; ++ mImageDesc->width = aPixelSize; ++ mImageDesc->height = aPixelSize; ++ mImageDesc->flags = 0; + + if (aPixelSize < nsFreeType2::gAntiAliasMinimum) { +- mImageDesc.image_type |= ftc_image_mono; + anti_alias = PR_FALSE; + } + +- if (nsFreeType2::gFreeType2Autohinted) +- mImageDesc.image_type |= ftc_image_flag_autohinted; +- +- if (nsFreeType2::gFreeType2Unhinted) +- mImageDesc.image_type |= ftc_image_flag_unhinted; +- + PRUint32 num_embedded_bitmaps, i; + PRInt32* embedded_bitmapheights; + mFaceID->GetEmbeddedBitmapHeights(&num_embedded_bitmaps, +@@ -218,7 +211,6 @@ nsFreeTypeFont::nsFreeTypeFont(nsITrueTy + if (embedded_bitmapheights[i] == aPixelSize) { + embedded_bimap = PR_TRUE; + // unhinted must be set for embedded bitmaps to be used +- mImageDesc.image_type |= ftc_image_flag_unhinted; + break; + } + } +@@ -312,7 +304,7 @@ nsFreeTypeFont::doGetBoundingMetrics(con + if (!face) + return NS_ERROR_FAILURE; + +- FTC_Image_Cache icache; ++ FTC_ImageCache icache; + mFt2->GetImageCache(&icache); + if (!icache) + return NS_ERROR_FAILURE; +@@ -401,7 +393,7 @@ nsFreeTypeFont::GetWidth(const PRUnichar + if (!face) + return 0; + +- FTC_Image_Cache icache; ++ FTC_ImageCache icache; + mFt2->GetImageCache(&icache); + if (!icache) + return 0; +@@ -725,7 +717,7 @@ nsFreeTypeXImage::DrawString(nsRendering + if (y%4==0) (*blendPixelFunc)(sub_image, y, ascent-1, black, 255/2); + #endif + +- FTC_Image_Cache icache; ++ FTC_ImageCache icache; + mFt2->GetImageCache(&icache); + if (!icache) + return 0; |