addr2line (void const * const addr)
{
char addr2line_cmd[512] = { 0 };
- sprintf (addr2line_cmd, "addr2line -f -p -e %.256s %p > %s", program_name.c_str(), addr, backtrace_file.string().c_str());
+ sprintf (addr2line_cmd, "addr2line -f -p -e %.256s %p > %s", program_name.c_str(), addr, backtrace_file.string().c_str());
return system(addr2line_cmd);
}
FILE* f = fopen_boost (backtrace_file, "w");
fprintf (f, "C-style exception %d\n", info->ExceptionRecord->ExceptionCode);
fclose(f);
-
+
if (info->ExceptionRecord->ExceptionCode != EXCEPTION_STACK_OVERFLOW) {
CONTEXT* context = info->ContextRecord;
SymInitialize (GetCurrentProcess (), 0, true);
-
+
STACKFRAME frame = { 0 };
-
+
/* setup initial stack frame */
#if _WIN64
frame.AddrPC.Offset = context->Rip;
frame.AddrStack.Offset = context->Rsp;
frame.AddrFrame.Offset = context->Rbp;
-#else
+#else
frame.AddrPC.Offset = context->Eip;
frame.AddrStack.Offset = context->Esp;
frame.AddrFrame.Offset = context->Ebp;
frame.AddrPC.Mode = AddrModeFlat;
frame.AddrStack.Mode = AddrModeFlat;
frame.AddrFrame.Mode = AddrModeFlat;
-
+
while (
StackWalk (
IMAGE_FILE_MACHINE_I386,
addr2line((void *) frame.AddrPC.Offset);
}
} else {
-#ifdef _WIN64
+#ifdef _WIN64
addr2line ((void *) info->ContextRecord->Rip);
-#else
+#else
addr2line ((void *) info->ContextRecord->Eip);
-#endif
+#endif
}
-
+
return EXCEPTION_CONTINUE_SEARCH;
}
#endif
<< e.what() << std::endl;
}
catch (...) {
- std::cerr << __FUNCTION__ << " caught unknown/unhandled exception."
+ std::cerr << __FUNCTION__ << " caught unknown/unhandled exception."
<< std::endl;
}
*/
std::locale::global (boost::locale::generator().generate (""));
boost::filesystem::path::imbue (std::locale ());
-#endif
-
+#endif
+
avfilter_register_all ();
#ifdef DCPOMATIC_OSX
Pango::init ();
dcp::init ();
-
+
Ratio::setup_ratios ();
PresetColourConversion::setup_colour_conversion_presets ();
VideoContentScale::setup_scales ();
#if defined(DCPOMATIC_WINDOWS) || defined(DCPOMATIC_OSX)
bindtextdomain ("libdcpomatic2", mo_path().string().c_str());
bind_textdomain_codeset ("libdcpomatic2", "UTF8");
-#endif
+#endif
#ifdef DCPOMATIC_LINUX
bindtextdomain ("libdcpomatic2", LINUX_LOCALE_PREFIX);
fclose (f);
--i;
- }
+ }
digester.add (buffer.get(), size - to_do);
return digester.get ();
if (boost::starts_with (f.leaf().string(), "._")) {
return false;
}
-
+
string ext = f.extension().string();
transform (ext.begin(), ext.end(), ext.begin(), ::tolower);
return (
if (ratio < full_frame.ratio ()) {
return dcp::Size (rint (full_frame.height * ratio), full_frame.height);
}
-
+
return dcp::Size (full_frame.width, rint (full_frame.width / ratio));
}
/* End time is not known */
return FFmpegSubtitlePeriod (packet_time + ContentTime::from_seconds (sub.start_display_time / 1e3));
}
-
+
return FFmpegSubtitlePeriod (
packet_time + ContentTime::from_seconds (sub.start_display_time / 1e3),
packet_time + ContentTime::from_seconds (sub.end_display_time / 1e3)
KEY,
VALUE
} state = AWAITING_QUESTION_MARK;
-
+
map<string, string> r;
string k;
string v;