hwpfilter/source/hbox.cxx | 38 ++++++++--------- hwpfilter/source/hcode.cxx | 4 - hwpfilter/source/hwpreader.cxx | 90 +++++++++++++++++++++++++---------------- hwpfilter/source/mzstring.cxx | 17 ++----- 4 files changed, 80 insertions(+), 69 deletions(-)
New commits: commit 0e45f8318ee73361fecb049b33b0662fabe295d3 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Sat Nov 5 15:59:27 2022 +0100 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Sat Nov 5 18:27:21 2022 +0100 -Werror,-Wdeprecated-declarations (sprintf, macOS 13 SDK): hwpfilter Change-Id: I91aa4dc3cedccf341a5b7a936c171323a3e58630 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142327 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/hwpfilter/source/hbox.cxx b/hwpfilter/source/hbox.cxx index ea8d46e5f59e..e72c61434fb7 100644 --- a/hwpfilter/source/hbox.cxx +++ b/hwpfilter/source/hbox.cxx @@ -29,7 +29,10 @@ #include "hcode.h" #include "datecode.h" +#include <o3tl/sprintf.hxx> #include <rtl/character.hxx> +#include <rtl/strbuf.hxx> +#include <rtl/string.hxx> int HBox::boxCount = 0; @@ -285,7 +288,7 @@ hchar_string DateCode::GetString() ret.push_back(*fmt); } if (num != -1) - sprintf(cbuf, form, num); + o3tl::sprintf(cbuf, form, num); for (i = 0; 0 != cbuf[i]; i++) { ret.push_back(*(cbuf + i)); @@ -519,9 +522,9 @@ static void getOutlineNumStr(int style, int level, int num, hchar * hstr) *hstr++ = '('; if (fmt & NUM) { - sprintf(buf, "%d", num); - str2hstr(buf, hstr); - hstr += strlen(buf); + auto const numbuf = OString::number(num); + str2hstr(numbuf.getStr(), hstr); + hstr += numbuf.length; } else if (fmt & (U_ROM | L_ROM)) { @@ -575,20 +578,18 @@ OUString Outline::GetUnicode() const case OLSTY_NUMS1: case OLSTY_NUMS2: { - char cur_num_str[10], buf[80]; + OStringBuffer buf; int i; buf[0] = 0; for (i = 0; i <= level; i++) { levelnum = ((number[i] < 1) ? 1 : number[i]); - if (shape == OLSTY_NUMS2 && i && i == level) - sprintf(cur_num_str, "%d%c", levelnum, 0); - else - sprintf(cur_num_str, "%d%c", levelnum, '.'); - strcat(buf, cur_num_str); + buf.append(OString::number(levelnum)); + if (!(shape == OLSTY_NUMS2 && i && i == level)) + buf.append('.'); } - str2hstr(buf, buffer); + str2hstr(buf.getStr(), buffer); return hstr2OUString(buffer); } case OLSTY_NUMSIG1: @@ -670,20 +671,17 @@ OUString Outline::GetUnicode() const break; case 12: /* Sequenced numbers. */ { - char cur_num_str[10],buf[80]; + OStringBuffer buf; int j; - buf[0] = 0; for (j = 0; j <= level; j++) { levelnum = ((number[j] < 1) ? 1 : number[j]); - if ((j && j == level) || (j == level && deco[i][1])) - sprintf(cur_num_str, "%d%c", levelnum, 0); - else - sprintf(cur_num_str, "%d%c", levelnum, '.'); - strcat(buf, cur_num_str); + buf.append(OString::number(levelnum)); + if (!((j && j == level) || (j == level && deco[i][1]))) + buf.append('.'); } - str2hstr(buf, buffer + l); - l += strlen(buf); + str2hstr(buf.getStr(), buffer + l); + l += buf.getLength(); break; } default: diff --git a/hwpfilter/source/hcode.cxx b/hwpfilter/source/hcode.cxx index cc9d051ca07b..d97387c54efe 100644 --- a/hwpfilter/source/hcode.cxx +++ b/hwpfilter/source/hcode.cxx @@ -31,12 +31,12 @@ #include <comphelper/sequence.hxx> #include <basegfx/numeric/ftools.hxx> #include <o3tl/safeint.hxx> +#include <o3tl/sprintf.hxx> #include <rtl/strbuf.hxx> #include <rtl/ustrbuf.hxx> #include <sal/types.h> #include <sal/macros.h> -#include <stdio.h> #include <stdlib.h> #include <string.h> #include <cmath> @@ -1296,7 +1296,7 @@ OUString hcolor2str(uchar color, uchar shade, bool bIsChar) OUString rgb2str(unsigned char red, unsigned char green, unsigned char blue) { char buf[8]; - int n = std::max(sprintf(buf, "#%02x%02x%02x", red, green, blue), 0); + int n = std::max(o3tl::sprintf(buf, "#%02x%02x%02x", red, green, blue), 0); return OUString::createFromAscii(std::string_view(buf, n)); } diff --git a/hwpfilter/source/hwpreader.cxx b/hwpfilter/source/hwpreader.cxx index 58d9598c7af7..8ac31e29caa8 100644 --- a/hwpfilter/source/hwpreader.cxx +++ b/hwpfilter/source/hwpreader.cxx @@ -25,6 +25,7 @@ #include <cmath> #include <o3tl/safeint.hxx> +#include <o3tl/sprintf.hxx> #include <osl/diagnose.h> #include <tools/stream.hxx> #include <basegfx/numeric/ftools.hxx> @@ -313,7 +314,7 @@ void HwpReader::makeMeta() else { minute = 0; } - sprintf(d->buf,"%d-%02d-%02dT%02d:%02d:00",year,month,day,hour,minute); + o3tl::sprintf(d->buf,"%d-%02d-%02dT%02d:%02d:00",year,month,day,hour,minute); startEl("meta:creation-date"); chars( OUString::createFromAscii(d->buf)); @@ -1814,8 +1815,10 @@ void HwpReader::makeTableStyle(Table *tbl) // column for (size_t i = 0 ; i < tbl->columns.nCount -1 ; i++) { - sprintf(d->buf,"Table%d.%c",hbox->style.boxnum, static_cast<char>('A'+i)); - mxList->addAttribute("style:name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "style:name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + "." + + OUStringChar(static_cast<char>('A'+i))); mxList->addAttribute("style:family", sXML_CDATA,"table-column"); startEl("style:style"); mxList->clear(); @@ -1830,8 +1833,9 @@ void HwpReader::makeTableStyle(Table *tbl) // row for (size_t i = 0 ; i < tbl->rows.nCount -1 ; i++) { - sprintf(d->buf,"Table%d.row%" SAL_PRI_SIZET "u",hbox->style.boxnum, i + 1); - mxList->addAttribute("style:name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "style:name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + ".row" + OUString::number(i + 1)); mxList->addAttribute("style:family", sXML_CDATA,"table-row"); startEl("style:style"); mxList->clear(); @@ -1846,8 +1850,11 @@ void HwpReader::makeTableStyle(Table *tbl) // cell for (auto const& tcell : tbl->cells) { - sprintf(d->buf,"Table%d.%c%d",hbox->style.boxnum, 'A'+ tcell->nColumnIndex, tcell->nRowIndex +1); - mxList->addAttribute("style:name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "style:name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + "." + + OUStringChar(char('A'+ tcell->nColumnIndex)) + + OUString::number(tcell->nRowIndex +1)); mxList->addAttribute("style:family", sXML_CDATA,"table-cell"); startEl("style:style"); mxList->clear(); @@ -3378,8 +3385,10 @@ void HwpReader::makeTable(TxtBox * hbox) // column for (size_t i = 0 ; i < tbl->columns.nCount -1 ; i++) { - sprintf(d->buf,"Table%d.%c",hbox->style.boxnum, static_cast<char>('A'+i)); - mxList->addAttribute("table:style-name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "table:style-name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + "." + + OUStringChar(static_cast<char>('A'+i))); startEl("table:table-column"); mxList->clear(); endEl("table:table-column"); @@ -3397,15 +3406,20 @@ void HwpReader::makeTable(TxtBox * hbox) k = j; } // row - sprintf(d->buf,"Table%d.row%d",hbox->style.boxnum, tcell->nRowIndex + 1); - mxList->addAttribute("table:style-name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "table:style-name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + ".row" + + OUString::number(tcell->nRowIndex + 1)); startEl("table:table-row"); mxList->clear(); j = tcell->nRowIndex; } - sprintf(d->buf,"Table%d.%c%d",hbox->style.boxnum, 'A'+ tcell->nColumnIndex, tcell->nRowIndex +1); - mxList->addAttribute("table:style-name", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "table:style-name", sXML_CDATA, + "Table" + OUString::number(hbox->style.boxnum) + "." + + OUStringChar(char('A'+ tcell->nColumnIndex)) + + OUString::number(tcell->nRowIndex +1)); if( tcell->nColumnSpan > 1 ) mxList->addAttribute("table:number-columns-spanned", sXML_CDATA, OUString::number(tcell->nColumnSpan)); if( tcell->nRowSpan > 1 ) @@ -4215,8 +4229,10 @@ void HwpReader::makePictureDRAW(HWPDrawingObject *drawobj, const Picture* hbox) OUString::number (WTMM( drawobj->extent.w )) + "mm"); mxList->addAttribute("svg:height", sXML_CDATA, OUString::number (WTMM( drawobj->extent.h )) + "mm"); - sprintf(d->buf, "0 0 %d %d", WTSM(drawobj->extent.w) , WTSM(drawobj->extent.h) ); - mxList->addAttribute("svg:viewBox", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute( + "svg:viewBox", sXML_CDATA, + "0 0 " + OUString::number(WTSM(drawobj->extent.w)) + " " + + OUString::number(WTSM(drawobj->extent.h))); OUStringBuffer oustr; @@ -4262,24 +4278,29 @@ void HwpReader::makePictureDRAW(HWPDrawingObject *drawobj, const Picture* hbox) NaturalSpline(n, tarr.get(), yarr.get(), yb, carr, darr); } - sprintf(d->buf, "M%d %dC%d %d", WTSM(xarr[0]), WTSM(yarr[0]), - WTSM(xarr[0] + xb[0]/3), WTSM(yarr[0] + yb[0]/3) ); - oustr.appendAscii(d->buf); + oustr.append( + "M" + OUString::number(WTSM(xarr[0])) + " " + + OUString::number(WTSM(yarr[0])) + "C" + + OUString::number(WTSM(xarr[0] + xb[0]/3)) + " " + + OUString::number(WTSM(yarr[0] + yb[0]/3))); for( i = 1 ; i < n ; i++ ){ if( i == n -1 ){ - sprintf(d->buf, " %d %d %d %dz", - WTSM(xarr[i] - xb[i]/3), WTSM(yarr[i] - yb[i]/3), - WTSM(xarr[i]), WTSM(yarr[i]) ); + oustr.append( + " " + OUString::number(WTSM(xarr[i] - xb[i]/3)) + " " + + OUString::number(WTSM(yarr[i] - yb[i]/3)) + " " + + OUString::number(WTSM(xarr[i])) + " " + + OUString::number(WTSM(yarr[i])) + "z"); } else{ - sprintf(d->buf, " %d %d %d %d %d %d", - WTSM(xarr[i] - xb[i]/3), WTSM(yarr[i] - yb[i]/3), - WTSM(xarr[i]), WTSM(yarr[i]), - WTSM(xarr[i] + xb[i]/3), WTSM(yarr[i] + yb[i]/3) ); + oustr.append( + " " + OUString::number(WTSM(xarr[i] - xb[i]/3)) + " " + + OUString::number(WTSM(yarr[i] - yb[i]/3)) + " " + + OUString::number(WTSM(xarr[i])) + " " + + OUString::number(WTSM(yarr[i])) + " " + + OUString::number(WTSM(xarr[i] + xb[i]/3)) + " " + + OUString::number(WTSM(yarr[i] + yb[i]/3))); } - - oustr.appendAscii(d->buf); } } @@ -4315,22 +4336,21 @@ void HwpReader::makePictureDRAW(HWPDrawingObject *drawobj, const Picture* hbox) mxList->addAttribute("svg:height", sXML_CDATA, OUString::number (WTMM( drawobj->extent.h )) + "mm"); - sprintf(d->buf, "0 0 %d %d", WTSM(drawobj->extent.w), WTSM(drawobj->extent.h)); - mxList->addAttribute("svg:viewBox", sXML_CDATA, OUString::createFromAscii(d->buf)); + mxList->addAttribute("svg:viewBox", sXML_CDATA, "0 0 " + OUString::number(WTSM(drawobj->extent.w)) + " " + OUString::number(WTSM(drawobj->extent.h))); OUStringBuffer oustr; if (drawobj->u.freeform.npt > 0) { - sprintf(d->buf, "%d,%d", WTSM(drawobj->u.freeform.pt[0].x), WTSM(drawobj->u.freeform.pt[0].y)); - oustr.appendAscii(d->buf); + oustr.append( + OUString::number(WTSM(drawobj->u.freeform.pt[0].x)) + "," + + OUString::number(WTSM(drawobj->u.freeform.pt[0].y))); int i; for (i = 1; i < drawobj->u.freeform.npt ; i++) { - sprintf(d->buf, " %d,%d", - WTSM(drawobj->u.freeform.pt[i].x), - WTSM(drawobj->u.freeform.pt[i].y)); - oustr.appendAscii(d->buf); + oustr.append( + " " + OUString::number(WTSM(drawobj->u.freeform.pt[i].x)) + "," + + OUString::number(WTSM(drawobj->u.freeform.pt[i].y))); } if( drawobj->u.freeform.pt[0].x == drawobj->u.freeform.pt[i-1].x && drawobj->u.freeform.pt[0].y == drawobj->u.freeform.pt[i-1].y ) diff --git a/hwpfilter/source/mzstring.cxx b/hwpfilter/source/mzstring.cxx index 462ed91ad3fc..06425b7e10bf 100644 --- a/hwpfilter/source/mzstring.cxx +++ b/hwpfilter/source/mzstring.cxx @@ -29,13 +29,10 @@ # endif # include <windows.h> #endif -#include <stdio.h> #include <stdlib.h> #include <string.h> -#ifndef _WIN32 -# define wsprintfA sprintf -#endif +#include <rtl/string.hxx> const int AllocSize = 8; @@ -182,20 +179,16 @@ MzString &MzString::operator << (char ch) MzString &MzString::operator << (int i) { - char str[80]; - - wsprintfA(str, "%d", i); - append(str); + auto const str = OString::number(i); + append(str.getStr(), str.length); return *this; } MzString &MzString::operator << (tools::Long l) { - char str[80]; - - wsprintfA(str, "%ld", l); - append(str); + auto const str = OString::number(l); + append(str.getStr(), str.length); return *this; }