Commit graph

6805 commits

Author SHA1 Message Date
Priyesh Kumar
8bb02e725f * builds/windows/dlg/dlg.vcxproj (PreprocessorDefinitions): Added
`DLG_STATIC' macro for Static builds of dlg on both `x64' and `Win32'
    platforms.

    * builds/windows/vc2010/freetype.vcxproj (PreprocessorDefinitions):
    Added `FT_LOGGING' macro for Debug builds of FreeType on both `x64' and
    `Win32' platforms.
2020-08-13 13:58:23 +05:30
Priyeshkkumar
008ee3ebca * src/base/ftdebug.c (ft_log_handler): Fix "-Wunused-parameter" warning.
* include/freetype/ftlogging.h ( FTLOGGING_H_ ): Added Include guard.

    * src/*: Fixed format specifiers.

    * [priyesh]ChangeLog: Fix typo.
2020-08-12 14:47:03 +05:30
Priyesh Kumar
84c719491f Bug fix on Windows.
* include/freetype/internal/ftdebug.h: Store the name of current
    `FT_COMPONENT' and then pass it to the functions `ft_add_tag()' and
    `ft_remove_tag()'
2020-08-12 07:44:15 +05:30
Priyesh Kumar
141ac5301b [build] Fix MinGW errors while building dlg with FreeType on Windows.
* builds/freetype.mk (DLG_DIR): New variable to include dlg's header
files.
(INCLUDES): Added `DLG_DIR'
When using MinGW to build dlg along with FreeType on Windows there are
missing dlg's include files errors. Therefore we need to add path to dlg's
include files to remove the errors.

* src/base/ftsystem.c: Fix `-Wformat' warnings.
2020-08-06 06:21:22 +05:30
Priyesh Kumar
daefd6e6cf [builds/windows] Skip dlg build for Release builds of FreeType on Windows 2020-07-30 15:21:49 +05:30
Priyesh Kumar
c945a046b1 Added a Visual Studios project to build dlg along with FreeType on Windows. 2020-07-30 14:21:35 +05:30
Priyeshkkumar
b528826f69 Merging master branch with priyeshLogLibrary branch 2020-07-28 13:43:28 +05:30
Priyeshkkumar
b5d7cd3a4b [priyesh]ChangeLog: Corrected ChangeLog 2020-07-23 00:50:29 +05:30
Priyesh Kumar
4e3b8181a3 Minor Additions from Windows 2020-07-22 15:00:37 +05:30
Priyeshkkumar
a0f918d1f1 Minor Changes 2020-07-22 19:46:14 +05:30
Priyesh Kumar
117da1f7e6 Minor Changes in autogen.sh and builds/toplevel.mk 2020-07-22 13:26:41 +05:30
Priyeshkkumar
9bd35c7d91 Updated builds/toplevel.mk for builds that don't use ./configure 2020-07-22 16:52:51 +05:30
Priyeshkkumar
df53385b67 Updated freetype.mk to build dlg 2020-07-21 15:43:04 +05:30
Priyeshkkumar
1e1912dbac Started working on build process 2020-07-20 18:13:17 +05:30
Priyesh Kumar
b3deaa037e fixed path seperators in [priyesh]ChangeLog 2020-07-15 19:18:53 +05:30
Priyesh Kumar
e854adc669 Started adding the support of logging on windows 2020-07-15 18:33:43 +05:30
Priyeshkkumar
708d8098ec Updated [priyesh]ChangeLog representing changes in previous commit 2020-07-13 18:47:13 +05:30
Priyeshkkumar
7d785da7a2 Changed macro FT_Log to macro FT_LOG 2020-07-13 18:44:05 +05:30
Priyeshkkumar
afa548bb74 Added a flag to toggle ON/OFF the printing of FT_COMPONENT and Timestamp with actual log message 2020-07-13 18:37:34 +05:30
Priyeshkkumar
0c793e381c Added code to print FT_COMPONENT and Time Stamp 2020-07-05 00:33:48 +05:30
Priyeshkkumar
bfe6d5218a Added support of callback functions to handle logs outside FreeType 2020-07-04 13:09:33 +05:30
Priyeshkkumar
b378812f22 Updates on dynamic change of trace level 2020-07-03 15:00:27 +05:30
Priyeshkkumar
fde1c1698d Minor Updates on FT_ERROR part 2020-07-02 22:21:46 +05:30
Priyeshkkumar
1d6ffcc77a Added public APIs to set new/default trace level, started working on Callback function 2020-07-02 19:50:49 +05:30
Priyeshkkumar
f7c5ed5f24 new line fixed 2020-06-30 18:14:20 +05:30
Priyeshkkumar
52926578db Addded logic to print trace messages to a file 2020-06-30 17:44:52 +05:30
Priyeshkkumar
421bb589e6 Added functions to initialize and un-initialize logging 2020-06-29 21:53:44 +05:30
Priyeshkkumar
01ce8ff340 Implemented a basic integration of dlg with FreeType 2020-06-29 17:49:57 +05:30
Sebastian Rasmussen
a443474755 [cff] Fix handling of `style_name == NULL' (#58630).
* src/cff/cffobjs.c (cff_face_init): If a call to `cff_strcpy' fails
by returning NULL in `cff_face_init', `remove_style' is still
called.  This means that the NULL pointer is dereferenced, causing a
crash.
2020-06-20 05:31:34 +02:00
Alexei Podtelezhnikov
de088b1dfd Simplify unused macro. 2020-06-19 22:46:30 -04:00
Sebastian Rasmussen
f594ffdc35 [cff] Fix another two memory leaks (#58629).
* src/cff/cffobjs.c (cff_size_init): If a call to `funcs->create'
fails to allocate one of the `internal->subfont' variables, make
sure to free `internal->topfont' and any successfully allocated
subfonts.
2020-06-19 18:55:49 +02:00
Sebastian Rasmussen
2e2f3cb5ba [psaux] Fix memory leak (#58626).
* src/psaux/psstack.c (cf2_stack_init): If `cf2_stack_init' fails to
allocate the stack, return error early.
2020-06-19 18:51:33 +02:00
Sebastian Rasmussen
09b98060d3 Fix memory leak (#58624).
* src/base/ftobjs.c (FT_New_Size): Avoid trying to free
  `size->internal`, unless `size' has been allocated. This
  mistake appeared in the fix for 58611.
2020-06-19 18:49:36 +02:00
Alexei Podtelezhnikov
6e722f2eaa [base] Rework d1180b5f95 until further notice.
* src/base/ftoutln.c (FT_Outline_Get_Orientation): Reject large
outlines.
2020-06-19 08:39:23 -04:00
Sebastian Rasmussen
8ed5a2477e [cff, cid] Fix segfaults in case of error (#58621).
* src/cff/cffobjs.c (cff_slot_done), src/cid/cidobjs.c
(cid_slot_done): If `ft_glyphslot_init' fails to allocate
`internal', then the class' `done_slot' callback (called by
`ft_glyphslot_done') must not dereference the pointer to `internal'.
2020-06-19 10:37:50 +02:00
Werner Lemberg
d1180b5f95 [base] Fix UBSAN error.
Reported as

  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=23166

* src/base/ftoutln.c (FT_Outline_Get_Orientation): Avoid values
larger than 32 bits.
2020-06-19 08:18:26 +02:00
Werner Lemberg
4d364b6821 [woff2] Fix segfault.
Reported as

  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=23402

* src/sfnt/sfwoff2.c (get_x_mins): Check whether `loca' table
exists.
2020-06-19 05:41:37 +02:00
Stephen McDowell
d924c5cf7e [sfnt] Support Intel compilers.
* src/sfnt/pngshim.c (premultiply_data): Intel compilers do not
currently support `__builtin_shuffle'.
2020-06-19 04:14:39 +02:00
Sebastian Rasmussen
a4429959b0 [base] Fix memory leak (#58611).
* src/base/ftobjs.c (FT_New_Size): When the call to `clazz->init_size'
fails, make sure to free `size->internal'.
2020-06-19 03:57:21 +02:00
Sebastian Rasmussen
575b78d9e3 [cff] Fix memory leak (#58610).
* src/cff/cffobjs.c (cff_size_init): When the call to
`funcs->create' fails, make sure to free `internal'.
2020-06-19 03:53:27 +02:00
Werner Lemberg
74cebeae12 * src/cff/cffload.c (cff_index_get_pointers): Rename t' to tbl'. 2020-06-19 03:41:12 +02:00
Sebastian Rasmussen
c8cd139c30 [cff] Free table upon error allocating other data (#58609).
* src/cff/cffload.c (cff_index_get_pointers): When new_bytes fails
to allocate, make sure to free the table.  Do the same for both
allocations if there is a later error.
2020-06-19 03:37:32 +02:00
Werner Lemberg
7438235b42 woff2tags.h: Fix copyright year. 2020-06-17 15:12:30 +02:00
Werner Lemberg
1658685967 Remove redundant inclusion of `ft2build.h'.
* */*: Remove `#include <ft2build.h>' where possible.

* include/freetype/freetype.h: Remove cpp error about missing
inclusion of `ft2build.h'.
2020-06-13 21:15:45 +02:00
David Turner
e13391333f Make macros for header file names optional.
We no longer have to take care of the 8.3 file name limit; this
allows us (a) to introduce longer, meaningful file names, and (b) to
avoid macro names in `#include' lines altogether since some
compilers (most notably Visual C++) doesn't support this properly.

*/*: Replace

   #include FOO_H

with

   #include <freetype/foo.h>

or something similar.  Also update the documentation.
2020-06-08 13:31:55 +02:00
Werner Lemberg
9e6e903cc4 * src/sfnt/ttcmap.c (tt_face_build_cmaps): Trace number of cmaps. 2020-06-02 17:14:54 +02:00
David Turner
62fea391fa Remove obsolete HAVE_STDINT_H probing macro.
This macro was updated by the unix configure script and the
`CMakeLists.txt' one, but is never used in the source tree (nor is
<stdint.h> included anywhere).

* CMakeLists.txt, builds/unix/ftconfig.in: Don't handle
`HAVE_STDINT_H'.
2020-05-18 18:42:57 +02:00
David Turner
4eee13404d Remove Jamfile files from the tree.
These have not been used in a very, very long time, so better remove
them.  A corresponding patch will be submitted to the
`freetype2-demos' repository.

* src/Jamfile, src/*/Jamfile, Jamrules: Delete.
2020-05-18 17:56:06 +02:00
Alexei Podtelezhnikov
3f70e6d20c [smooth] Turn on LCD filtering during FreeType initialization.
* src/smooth/ftsmooth.c (ft_smooth_init): Enable LCD filtering.

* include/freetype/ftlcdfil.h: Document it, remove patent warnings.
* include/freetype/freetype.h (FT_Render_Mode): Updated.
* include/freetype/config/ftoption.h, devel/ftoption.h
[FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: Do not mention patents.
2020-05-12 00:38:46 -04:00
Alexei Podtelezhnikov
652f886319 [smooth] Stop using dedicated LCD modules and classes.
The LCD modules were never truly independent. They mostly served as
a way to disable patented LCD rendering, which is no longer necessary.
The `smooth' module now handles LCD modes as well.

* src/smooth/ftsmooth.c (ft_smooth_lcd_renderer_class.
ft_smooth_lcdv_renderer_class): Deleted.
(ft_render_smooth): Reworked from `ft_render_smooth_generic'.
* src/smooth/ftsmooth.h: Remove dedicated LCD classes.
* src/smooth/module.mk: Remove dedicated LCD modules.
* include/freetype/config/ftmodule.h: Ditto.
* builds/amiga/include/config/ftmodule.h: Ditto.
* include/freetype/ftmodapi.h: Do not mention LCD modules.
2020-05-11 23:30:37 -04:00