summaryrefslogtreecommitdiffstats
path: root/libass/ass.c
diff options
context:
space:
mode:
authoreugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-12-03 17:59:13 +0000
committereugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-12-03 17:59:13 +0000
commit7db61d9736e71adcd85ce562ae89861513567d91 (patch)
tree4012a408a05f63dd4b35eacc763230b9714e1fa7 /libass/ass.c
parent6d0d8d71f882ed01f1aadecb923d939efa6a4d99 (diff)
downloadmpv-7db61d9736e71adcd85ce562ae89861513567d91.tar.bz2
mpv-7db61d9736e71adcd85ce562ae89861513567d91.tar.xz
Keep embedded fonts in ass_library_t and perform actual disk write
in fontconfig initialization. This is required for some fontconfig-related improvements. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21474 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass/ass.c')
-rw-r--r--libass/ass.c80
1 files changed, 0 insertions, 80 deletions
diff --git a/libass/ass.c b/libass/ass.c
index c1568f07fd..d2c9523c7e 100644
--- a/libass/ass.c
+++ b/libass/ass.c
@@ -1046,86 +1046,6 @@ int ass_read_styles(ass_track_t* track, char* fname, char* codepage)
return 0;
}
-static char* validate_fname(char* name)
-{
- char* fname;
- char* p;
- char* q;
- unsigned code;
- int sz = strlen(name);
-
- q = fname = malloc(sz + 1);
- p = name;
- while (*p) {
- code = utf8_get_char(&p);
- if (code == 0)
- break;
- if ( (code > 0x7F) ||
- (code == '\\') ||
- (code == '/') ||
- (code == ':') ||
- (code == '*') ||
- (code == '?') ||
- (code == '<') ||
- (code == '>') ||
- (code == '|') ||
- (code == 0))
- {
- *q++ = '_';
- } else {
- *q++ = code;
- }
- if (p - name > sz)
- break;
- }
- *q = 0;
- return fname;
-}
-
-/**
- * \brief Add a memory font.
- * \param name attachment name
- * \param data binary font data
- * \param data_size data size
-*/
-void ass_add_font(ass_library_t* library, const char* name, char* data, int data_size)
-{
- char buf[1000];
- FILE* fp = 0;
- int rc;
- struct stat st;
- char* fname;
- const char* fonts_dir = library->fonts_dir;
-
- if (!fonts_dir)
- return;
- rc = stat(fonts_dir, &st);
- if (rc) {
- int res;
-#ifndef __MINGW32__
- res = mkdir(fonts_dir, 0700);
-#else
- res = mkdir(fonts_dir);
-#endif
- if (res) {
- mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_FailedToCreateDirectory, fonts_dir);
- }
- } else if (!S_ISDIR(st.st_mode)) {
- mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_NotADirectory, fonts_dir);
- }
-
- fname = validate_fname((char*)name);
-
- snprintf(buf, 1000, "%s/%s", fonts_dir, fname);
- free(fname);
-
- fp = fopen(buf, "wb");
- if (!fp) return;
-
- fwrite(data, data_size, 1, fp);
- fclose(fp);
-}
-
long long ass_step_sub(ass_track_t* track, long long now, int movement) {
int i;