--- pdf/pdfium/pdfium_engine.cc.orig 2017-07-25 21:04:59.000000000 +0200 +++ pdf/pdfium/pdfium_engine.cc 2017-08-02 14:54:56.250862000 +0200 @@ -131,7 +131,7 @@ return page_numbers; } -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) PP_Instance g_last_instance_id; @@ -635,7 +635,7 @@ config.m_v8EmbedderSlot = gin::kEmbedderPDFium; FPDF_InitLibraryWithConfig(&config); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) // Font loading doesn't work in the renderer sandbox in Linux. FPDF_SetSystemFontInfo(&g_font_info); #else @@ -660,7 +660,7 @@ void ShutdownSDK() { FPDF_DestroyLibrary(); -#if !defined(OS_LINUX) +#if !defined(OS_LINUX) && !defined(OS_BSD) delete g_font_info; #endif TearDownV8(); @@ -766,7 +766,7 @@ IFSDK_PAUSE::user = nullptr; IFSDK_PAUSE::NeedToPauseNow = Pause_NeedToPauseNow; -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) // PreviewModeClient does not know its pp::Instance. pp::Instance* instance = client_->GetPluginInstance(); if (instance) @@ -1496,7 +1496,7 @@ FPDF_ClosePage(pdf_page); } -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif @@ -2918,7 +2918,7 @@ DCHECK_LT(static_cast(progressive_index), progressive_paints_.size()); DCHECK(image_data); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif @@ -3368,7 +3368,7 @@ FORM_DoPageAAction(old_page, form_, FPDFPAGE_AACTION_CLOSE); } most_visible_page_ = index; -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif if (most_visible_page_ != -1 && called_do_document_action_) {