[lttng-dev] [UST PATCH] Add exception handling to lttng-gen-tp io operations
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Mon Mar 19 13:21:07 EDT 2012
* Yannick Brosseau (yannick.brosseau at gmail.com) wrote:
> (closes: 54)
merged, thanks!
Mathieu
>
> Signed-off-by: Yannick Brosseau <yannick.brosseau at gmail.com>
> ---
> tools/lttng-gen-tp | 57 +++++++++++++++++++++++++++++++---------------------
> 1 files changed, 34 insertions(+), 23 deletions(-)
>
> diff --git a/tools/lttng-gen-tp b/tools/lttng-gen-tp
> index 828bee6..03a85fc 100755
> --- a/tools/lttng-gen-tp
> +++ b/tools/lttng-gen-tp
> @@ -207,6 +207,8 @@ def main(argv=None):
> opts, args = getopt.gnu_getopt(argv[1:], "ho:a", ["help"])
> except getopt.error, msg:
> raise Usage(msg)
> + if len(args) == 0:
> + raise Usage("No template file given")
>
> except Usage, err:
> print >>sys.stderr, err.msg
> @@ -256,28 +258,37 @@ def main(argv=None):
> # process arguments
> for arg in args:
>
> - tpl = TemplateFile(arg)
> - if doHeader:
> - if headerFilename:
> - curFilename = headerFilename
> - else:
> - curFilename = re.sub("\.tp$",".h",arg)
> - doth = HeaderFile(curFilename, tpl)
> - doth.write()
> - if doCFile:
> - if cFilename:
> - curFilename = cFilename
> - else:
> - curFilename = re.sub("\.tp$",".c",arg)
> - dotc = CFile(curFilename, tpl)
> - dotc.write()
> - if doObj:
> - if objFilename:
> - curFilename = objFilename
> - else:
> - curFilename = re.sub("\.tp$",".o",arg)
> - dotobj = ObjFile(curFilename, tpl)
> - dotobj.write()
> -
> + tpl = None
> + try:
> + tpl = TemplateFile(arg)
> + except IOError as args:
> + print "Cannot read input file " + args.filename + " " + args.strerror
> + return -1
> + try:
> + if doHeader:
> + if headerFilename:
> + curFilename = headerFilename
> + else:
> + curFilename = re.sub("\.tp$",".h",arg)
> + doth = HeaderFile(curFilename, tpl)
> + doth.write()
> + if doCFile:
> + if cFilename:
> + curFilename = cFilename
> + else:
> + curFilename = re.sub("\.tp$",".c",arg)
> + dotc = CFile(curFilename, tpl)
> + dotc.write()
> + if doObj:
> + if objFilename:
> + curFilename = objFilename
> + else:
> + curFilename = re.sub("\.tp$",".o",arg)
> + dotobj = ObjFile(curFilename, tpl)
> + dotobj.write()
> + except IOError as args:
> + print "Cannot write output file " + args.filename + " " + args.strerror
> + return -1
> +
> if __name__ == "__main__":
> sys.exit(main())
> --
> 1.7.9.1
>
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list