From 29d6a297083ab6dc0eb9d2a2419f71bf167e5c6b Mon Sep 17 00:00:00 2001 From: Liang Chang Date: Tue, 4 May 2021 03:00:57 +0800 Subject: [PATCH] dtinfo: Fix a segmentation fault. The return value from CanvasRenderer::_dofont is a pointer. It will be passed to the free function. Ensure that pointer always points to a dynamically allocated memory to avoid segmentation faults. --- cde/programs/dtinfo/dtinfo/src/OnlineRender/FeatureSupport.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cde/programs/dtinfo/dtinfo/src/OnlineRender/FeatureSupport.C b/cde/programs/dtinfo/dtinfo/src/OnlineRender/FeatureSupport.C index bc047b653..0c82adfe7 100644 --- a/cde/programs/dtinfo/dtinfo/src/OnlineRender/FeatureSupport.C +++ b/cde/programs/dtinfo/dtinfo/src/OnlineRender/FeatureSupport.C @@ -621,7 +621,7 @@ CanvasRenderer::_dofont(const FeatureSet &fs, Symbol** symbols) // if we still can't find one go with whatever. else { - xlfd = (char*)"-*-*-*-*-*-*-*-*-*-*-*-*-*"; + xlfd = strdup("-*-*-*-*-*-*-*-*-*-*-*-*-*"); } #ifdef FONT_DEBUG fprintf(stderr, "resulting in \"%s\".\n", xlfd);