Re: [Powertop] [PATCH] Use printf, not sprintf, to print messages to stdout.

Magnus Fromreide <magfr at lysator.liu.se> Thu, 21 Jun 2012 21:48:56 +0200
Newsgroups dev.linux.lists.powertop
Message-ID <1340308136.14495.4.camel@sara>
On Thu, 2012-06-21 at 21:42 +0200, Lekensteyn wrote:
> On Thursday 21 June 2012 22:14:41 Sergey Senozhatsky wrote:
> > On (06/16/12 18:14), Magnus Fromreide wrote:
> > > This undos the last printf->sprintf change from 8fd54ace.
> > > 
> > > Signed-off-by: Magnus Fromreide <magfr(a)lysator.liu.se>
> > > ---
> > > 
> > >  src/main.cpp |    4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/src/main.cpp b/src/main.cpp
> > > index 880d745..a2d8700 100644
> > > --- a/src/main.cpp
> > > +++ b/src/main.cpp
> > > @@ -229,7 +229,7 @@ void one_measurement(int seconds, char *workload)
> > > 
> > >  void out_of_memory()
> > >  {
> > >  
> > >  	reset_display();
> > > 
> > > -	sprintf("%s...\n",_("PowerTOP is out of memory. PowerTOP is 
> Aborting"));
> > > +	printf("%s...\n",_("PowerTOP is out of memory. PowerTOP is Aborting"));
> > > 
> > >  	abort();
> > >  
> > >  }
> > > 
> > > @@ -458,7 +458,7 @@ int main(int argc, char **argv)
> > > 
> > >  #ifndef DISABLE_NCURSES
> > >  
> > >  	endwin();
> > >  
> > >  #endif
> > > 
> > > -	sprintf("%s\n", _("Leaving PowerTOP"));
> > > +	printf("%s\n", _("Leaving PowerTOP"));
> > > 
> > >  	end_process_data();
> > >  	clear_process_data();
> > 
> > Oh, good catch!
> > 
> > Looks like changes were introduced by commit
> > 8fd54ace0a398cd155bf0af620c85d0105778f6a.
> 
> That commit contains more abuse of sprintf:
> https://github.com/fenrus75/powertop/commit/8fd54ace0a398cd155bf0af620c85d0105778f6a#L1L102
> Writing to a constant string is not going to work, eh?

Yes, lots of sprintf abuse there but most of it is fixed in other
patches. I think these are the only ones left.

/MF