summaryrefslogtreecommitdiffstats
path: root/libass
diff options
context:
space:
mode:
authorOleg Oshmyan <chortos@inbox.lv>2015-10-30 01:33:30 +0200
committerOleg Oshmyan <chortos@inbox.lv>2015-10-30 03:50:53 +0200
commit7ff5f49e30b91f8ac3e707896ee1fed83dcca170 (patch)
treec8d34e844653ea61c09d7a52a13285f5d7e13232 /libass
parent488070876efea2c28ff3e3945c4568c3d831a254 (diff)
downloadlibass-7ff5f49e30b91f8ac3e707896ee1fed83dcca170.tar.bz2
libass-7ff5f49e30b91f8ac3e707896ee1fed83dcca170.tar.xz
directwrite: slightly clean up the code
* Metrics are not used, so don't fetch them. * All variables except meta are always explicitly set before use, so don't initialize them. * Declare variables where they are used. * Use int loop variables when the loop bound is int. * Prefer post-increment to pre-increment.
Diffstat (limited to 'libass')
-rw-r--r--libass/ass_directwrite.c36
1 files changed, 17 insertions, 19 deletions
diff --git a/libass/ass_directwrite.c b/libass/ass_directwrite.c
index be029e6..e07b607 100644
--- a/libass/ass_directwrite.c
+++ b/libass/ass_directwrite.c
@@ -503,27 +503,23 @@ static bool is_postscript(IDWriteFont *font)
static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
ASS_FontProvider *provider)
{
- HRESULT hr = S_OK;
- DWRITE_FONT_METRICS metrics;
- DWRITE_FONT_STYLE style;
- ASS_FontProviderMetaData meta = {0};
+ HRESULT hr;
+ BOOL exists;
wchar_t temp_name[NAME_MAX_LENGTH];
- int size_needed = 0;
- IDWriteLocalizedStrings *familyNames = NULL;
- IDWriteLocalizedStrings *fontNames = NULL;
- IDWriteLocalizedStrings *psNames = NULL;
- BOOL exists = FALSE;
+ int size_needed;
+ ASS_FontProviderMetaData meta = {0};
meta.weight = IDWriteFont_GetWeight(font);
meta.width = map_width(IDWriteFont_GetStretch(font));
- IDWriteFont_GetMetrics(font, &metrics);
- style = IDWriteFont_GetStyle(font);
+
+ DWRITE_FONT_STYLE style = IDWriteFont_GetStyle(font);
meta.slant = (style == DWRITE_FONT_STYLE_NORMAL) ? FONT_SLANT_NONE :
(style == DWRITE_FONT_STYLE_OBLIQUE)? FONT_SLANT_OBLIQUE :
(style == DWRITE_FONT_STYLE_ITALIC) ? FONT_SLANT_ITALIC : FONT_SLANT_NONE;
+ IDWriteLocalizedStrings *psNames;
hr = IDWriteFont_GetInformationalStrings(font,
- DWRITE_INFORMATIONAL_STRING_POSTSCRIPT_NAME, &psNames,&exists);
+ DWRITE_INFORMATIONAL_STRING_POSTSCRIPT_NAME, &psNames, &exists);
if (FAILED(hr)) {
IDWriteFont_Release(font);
return;
@@ -538,7 +534,7 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
}
temp_name[NAME_MAX_LENGTH-1] = 0;
- size_needed = WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, NULL, 0,NULL, NULL);
+ size_needed = WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, NULL, 0, NULL, NULL);
char *mbName = (char *) malloc(size_needed);
WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, mbName, size_needed, NULL, NULL);
meta.postscript_name = mbName;
@@ -546,8 +542,9 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
IDWriteLocalizedStrings_Release(psNames);
}
+ IDWriteLocalizedStrings *fontNames;
hr = IDWriteFont_GetInformationalStrings(font,
- DWRITE_INFORMATIONAL_STRING_FULL_NAME, &fontNames,&exists);
+ DWRITE_INFORMATIONAL_STRING_FULL_NAME, &fontNames, &exists);
if (FAILED(hr)) {
IDWriteFont_Release(font);
return;
@@ -556,7 +553,7 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
if (exists) {
meta.n_fullname = IDWriteLocalizedStrings_GetCount(fontNames);
meta.fullnames = (char **) calloc(meta.n_fullname, sizeof(char *));
- for (UINT32 k = 0; k < meta.n_fullname; ++k) {
+ for (int k = 0; k < meta.n_fullname; k++) {
hr = IDWriteLocalizedStrings_GetString(fontNames, k,
temp_name,
NAME_MAX_LENGTH);
@@ -573,6 +570,7 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
IDWriteLocalizedStrings_Release(fontNames);
}
+ IDWriteLocalizedStrings *familyNames;
hr = IDWriteFont_GetInformationalStrings(font,
DWRITE_INFORMATIONAL_STRING_WIN32_FAMILY_NAMES, &familyNames, &exists);
if (!exists)
@@ -584,7 +582,7 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
meta.n_family = IDWriteLocalizedStrings_GetCount(familyNames);
meta.families = (char **) calloc(meta.n_family, sizeof(char *));
- for (UINT32 k = 0; k < meta.n_family; ++k) {
+ for (int k = 0; k < meta.n_family; k++) {
hr = IDWriteLocalizedStrings_GetString(familyNames, k,
temp_name,
NAME_MAX_LENGTH);
@@ -593,7 +591,7 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
}
temp_name[NAME_MAX_LENGTH-1] = 0;
- size_needed = WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, NULL, 0,NULL, NULL);
+ size_needed = WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, NULL, 0, NULL, NULL);
char *mbName = (char *) malloc(size_needed);
WideCharToMultiByte(CP_UTF8, 0, temp_name, -1, mbName, size_needed, NULL, NULL);
meta.families[k] = mbName;
@@ -607,9 +605,9 @@ static void add_font(IDWriteFont *font, IDWriteFontFamily *fontFamily,
ass_font_provider_add_font(provider, &meta, NULL, 0, font_priv);
- for (UINT32 k = 0; k < meta.n_family; ++k)
+ for (int k = 0; k < meta.n_family; k++)
free(meta.families[k]);
- for (UINT32 k = 0; k < meta.n_fullname; ++k)
+ for (int k = 0; k < meta.n_fullname; k++)
free(meta.fullnames[k]);
free(meta.fullnames);
free(meta.families);