hotspot/src/share/vm/utilities/xmlstream.cpp
changeset 24424 2658d7834c6e
parent 24002 4e6a72032a99
child 27880 afb974a04396
equal deleted inserted replaced
24358:8528b67f6562 24424:2658d7834c6e
     1 /*
     1 /*
     2  * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   334   print_raw("</");
   334   print_raw("</");
   335   print_raw(kind);
   335   print_raw(kind);
   336   print_raw_cr(">");
   336   print_raw_cr(">");
   337 }
   337 }
   338 
   338 
       
   339 PRAGMA_DIAG_PUSH
       
   340 PRAGMA_FORMAT_NONLITERAL_IGNORED
   339 // ------------------------------------------------------------------
   341 // ------------------------------------------------------------------
   340 void xmlStream::va_done(const char* format, va_list ap) {
   342 void xmlStream::va_done(const char* format, va_list ap) {
   341   char buffer[200];
   343   char buffer[200];
   342   guarantee(strlen(format) + 10 < sizeof(buffer), "bigger format buffer");
   344   guarantee(strlen(format) + 10 < sizeof(buffer), "bigger format buffer");
   343   const char* kind = format;
   345   const char* kind = format;
   352   end_elem();
   354   end_elem();
   353   // Output the tail-tag of the enclosing element.
   355   // Output the tail-tag of the enclosing element.
   354   buffer[kind_len] = 0;
   356   buffer[kind_len] = 0;
   355   tail(buffer);
   357   tail(buffer);
   356 }
   358 }
       
   359 PRAGMA_DIAG_POP
   357 
   360 
   358 // Output a timestamp attribute.
   361 // Output a timestamp attribute.
   359 void xmlStream::stamp() {
   362 void xmlStream::stamp() {
   360   assert_if_no_error(inside_attrs(), "stamp must be an attribute");
   363   assert_if_no_error(inside_attrs(), "stamp must be an attribute");
   361   print_raw(" stamp='");
   364   print_raw(" stamp='");
   397 
   400 
   398 void xmlStream::method_text(methodHandle method) {
   401 void xmlStream::method_text(methodHandle method) {
   399   ResourceMark rm;
   402   ResourceMark rm;
   400   assert_if_no_error(inside_attrs(), "printing attributes");
   403   assert_if_no_error(inside_attrs(), "printing attributes");
   401   if (method.is_null())  return;
   404   if (method.is_null())  return;
   402   text()->print(method->method_holder()->external_name());
   405   text()->print("%s", method->method_holder()->external_name());
   403   print_raw(" ");  // " " is easier for tools to parse than "::"
   406   print_raw(" ");  // " " is easier for tools to parse than "::"
   404   method->name()->print_symbol_on(text());
   407   method->name()->print_symbol_on(text());
   405   print_raw(" ");  // separator
   408   print_raw(" ");  // separator
   406   method->signature()->print_symbol_on(text());
   409   method->signature()->print_symbol_on(text());
   407 }
   410 }