comparison libinterp/corefcn/latex-text-renderer.cc @ 31211:8340137bb190

maint: Merge stable to default.
author Markus Mützel <markus.muetzel@gmx.de>
date Mon, 29 Aug 2022 13:58:00 +0200
parents 670a0d878af1 9ad55d2e1bbf
children e88a07dec498
comparison
equal deleted inserted replaced
31209:f5db0112f7e8 31211:8340137bb190
213 latex_renderer::write_tex_file (const std::string& txt, int halign) 213 latex_renderer::write_tex_file (const std::string& txt, int halign)
214 { 214 {
215 if (m_tmp_dir.empty ()) 215 if (m_tmp_dir.empty ())
216 { 216 {
217 //Create the temporary directory 217 //Create the temporary directory
218 #if defined (OCTAVE_USE_WINDOWS_API)
219 static std::string base_tmp_dir;
220
221 if (base_tmp_dir.empty ())
222 {
223 base_tmp_dir = sys::env::get_temp_directory ();
224
225 // Make sure we don't get short 8.3 path on Windows since some
226 // versions of latex on that platform don't support them
227 // (see bug #62779)
228 if (base_tmp_dir.find ('~') != std::string::npos)
229 base_tmp_dir = sys::canonicalize_file_name (base_tmp_dir);
230 }
231
232 m_tmp_dir = sys::tempnam (base_tmp_dir, "latex");
233 #else
218 m_tmp_dir = sys::tempnam ("", "latex"); 234 m_tmp_dir = sys::tempnam ("", "latex");
235 #endif
219 236
220 if (sys::mkdir (m_tmp_dir, 0700) != 0) 237 if (sys::mkdir (m_tmp_dir, 0700) != 0)
221 { 238 {
222 warning_with_id ("Octave:LaTeX:internal-error", 239 warning_with_id ("Octave:LaTeX:internal-error",
223 "latex_renderer: unable to create temp directory"); 240 "latex_renderer: unable to create temp directory");