From 0907d81fcb816263ae2ddfc1b4b2179b492bde4a Mon Sep 17 00:00:00 2001 From: Florian Henry Date: Mon, 2 Dec 2013 11:05:07 +0100 Subject: [PATCH] Avoid strpos bug if string is empty or null --- htdocs/core/lib/pdf.lib.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index dcf5ebff74b..fdb07237bac 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -926,13 +926,21 @@ function pdf_getlinedesc($object,$i,$outputlangs,$hideref=0,$hidedesc=0,$issuppl //Manage HTML entities description test //Cause $prodser->description is store with htmlentities but $desc no + $testHTMLDescNeedTranslated=true; + $testDescNeedTranslated=true; if ($conf->global->FCKEDITOR_ENABLE_PRODUCTDESC) { - $testDescNeedTranslated=(strpos(dol_html_entity_decode($desc,ENT_QUOTES | ENT_HTML401),dol_html_entity_decode($prodser->description,ENT_QUOTES | ENT_HTML401))!==false); + if (!empty($desc) && !empty($prodser->description)) { + $testHTMLDescNeedTranslated=(strpos(dol_html_entity_decode($desc,ENT_QUOTES | ENT_HTML401),dol_html_entity_decode($prodser->description,ENT_QUOTES | ENT_HTML401))!==false); + } } else { - $testDescNeedTranslated=true; + if (!empty($desc) && !empty($prodser->description)) { + $testDescNeedTranslated = (strpos($desc,$prodser->description)!==false); + } else { + $testDescNeedTranslated=false; + } } - if (! empty($prodser->multilangs[$outputlangs->defaultlang]["description"]) && ($testDescNeedTranslated || (strpos($desc,$prodser->description)!==false))) $desc=$prodser->multilangs[$outputlangs->defaultlang]["description"]; + if (! empty($prodser->multilangs[$outputlangs->defaultlang]["description"]) && ($testHTMLDescNeedTranslated || $testDescNeedTranslated)) $desc=$prodser->multilangs[$outputlangs->defaultlang]["description"]; if (! empty($prodser->multilangs[$outputlangs->defaultlang]["note"]) && $note == $prodser->note) $note=$prodser->multilangs[$outputlangs->defaultlang]["note"]; } }