font=MhpOutput::System::self()->Interface()->CreateFont(filename, desc);
font=MhpOutput::System::self()->Interface()->CreateFont(path.toCString(), desc);
jlong Java_vdr_mhp_awt_MHPFontPeer_setFont(JNIEnv* env, jobject obj, jstring spec, jint style, jint size) {   DFBFontDescription desc;      const char *fontname=(const char *)env->GetStringUTFChars(spec, NULL);   int len=strlen(MHPFONTDIR)+strlen(fontname)+3+4;   char filename[len];   sprintf(filename, "%s/%s%s%s", MHPFONTDIR, fontname, styles[style & 0x3], ".ttf");   env->ReleaseStringUTFChars(spec, fontname);      desc.flags = (DFBFontDescriptionFlags) (DFDESC_WIDTH | DFDESC_HEIGHT);   desc.width = size * 3 / 4;   desc.height = size;         IDirectFBFont *font;   try {      font=MhpOutput::System::self()->Interface()->CreateFont(filename, desc);   } catch (DFBException *e) {      delete e;      try {         font=MhpOutput::System::self()->Interface()->CreateFont(defaultFont, desc);      } catch (DFBException *e) {         printf("DirectFB: Error %s, %s\n", e->GetAction(), e->GetResult());         esyslog("MHP Graphics subsystem short of panicking: No fonts found! Font path is %s", MHPFONTDIR);         //Throw an InternalError instead?         JNI::Exception::Throw(JNI::JavaLangIllegalArgumentException, "Request font and default font not found");         delete e;         return 0;      }   }   return (jlong )font;}