Browse Source

* apt-pkg/indexrecords.cc:

- fix some i18n issues
* apt-pkg/contrib/strutl.h:
  - add new strprintf() function to make i18n strings easier
debian/1.8.y
Michael Vogt 14 years ago
parent
commit
d4cd303eae
  1. 15
      apt-pkg/contrib/strutl.cc
  2. 1
      apt-pkg/contrib/strutl.h
  3. 6
      apt-pkg/indexrecords.cc
  4. 4
      debian/changelog

15
apt-pkg/contrib/strutl.cc

@ -1032,6 +1032,21 @@ void ioprintf(ostream &out,const char *format,...)
out << S;
}
/*}}}*/
// strprintf - C format string outputter to C++ strings /*{{{*/
// ---------------------------------------------------------------------
/* This is used to make the internationalization strings easier to translate
and to allow reordering of parameters */
void strprintf(string &out,const char *format,...)
{
va_list args;
va_start(args,format);
// sprintf the description
char S[1024];
vsnprintf(S,sizeof(S),format,args);
out = string(S);
}
/*}}}*/
// safe_snprintf - Safer snprintf /*{{{*/
// ---------------------------------------------------------------------
/* This is a snprintf that will never (ever) go past 'End' and returns a

1
apt-pkg/contrib/strutl.h

@ -59,6 +59,7 @@ bool Hex2Num(const string &Str,unsigned char *Num,unsigned int Length);
bool TokSplitString(char Tok,char *Input,char **List,
unsigned long ListMax);
void ioprintf(ostream &out,const char *format,...) APT_FORMAT2;
void strprintf(string &out,const char *format,...) APT_FORMAT2;
char *safe_snprintf(char *Buffer,char *End,const char *Format,...) APT_FORMAT3;
bool CheckDomainList(const string &Host, const string &List);

6
apt-pkg/indexrecords.cc

@ -37,14 +37,14 @@ bool indexRecords::Load(const string Filename)
pkgTagFile TagFile(&Fd, Fd.Size() + 256); // XXX
if (_error->PendingError() == true)
{
ErrorText = _(("Unable to parse Release file " + Filename).c_str());
strprintf(ErrorText, _("Unable to parse Release file %s"),Filename.c_str());
return false;
}
pkgTagSection Section;
if (TagFile.Step(Section) == false)
{
ErrorText = _(("No sections in Release file " + Filename).c_str());
strprintf(ErrorText, _("No sections in Release file %s"), Filename.c_str());
return false;
}
@ -78,7 +78,7 @@ bool indexRecords::Load(const string Filename)
if(HashString::SupportedHashes()[i] == NULL)
{
ErrorText = _(("No Hash entry in Release file " + Filename).c_str());
strprintf(ErrorText, _("No Hash entry in Release file %s"), Filename.c_str());
return false;
}

4
debian/changelog

@ -35,6 +35,10 @@ apt (0.7.17) UNRELEASED; urgency=low
* apt-pkg/deb/dpkgpm.cc:
- fix potential hang when in a backgroud process group
- fix SIGHUP handling (closes: #463030)
* apt-pkg/indexrecords.cc:
- fix some i18n issues
* apt-pkg/contrib/strutl.h:
- add new strprintf() function to make i18n strings easier
[ Dereck Wonnacott ]
* apt-ftparchive might write corrupt Release files (LP: #46439)

Loading…
Cancel
Save