< prev index next >

src/share/vm/compiler/compileLog.cpp

Print this page
rev 13166 : read/write APIs in class os shall return ssize_t

@@ -214,21 +214,21 @@
       file->print_raw("<compilation_log thread='");
       jio_snprintf(buf, buflen, UINTX_FORMAT, log->thread_id());
       file->print_raw(buf);
       file->print_raw_cr("'>");
 
-      size_t nr; // number read into buf from partial log
+      ssize_t nr; // number read into buf from partial log
       // Copy data up to the end of the last <event> element:
       julong to_read = log->_file_end;
       while (to_read > 0) {
         if (to_read < (julong)buflen)
-              nr = (size_t)to_read;
+              nr = (ssize_t)to_read;
         else  nr = buflen;
         nr = read(partial_fd, buf, (int)nr);
         if (nr <= 0)  break;
         to_read -= (julong)nr;
-        file->write(buf, nr);
+        file->write(buf, (size_t)nr);
       }
 
       // Copy any remaining data inside a quote:
       bool saw_slop = false;
       int end_cdata = 0;  // state machine [0..2] watching for too many "]]"

@@ -245,11 +245,11 @@
         // in case there is a CDATA quote embedded in the fragment.
         const char* bufp;  // pointer into buf
         size_t nw; // number written in each pass of the following loop:
         for (bufp = buf; nr > 0; nr -= nw, bufp += nw) {
           // Write up to any problematic CDATA delimiter (usually all of nr).
-          for (nw = 0; nw < nr; nw++) {
+          for (nw = 0; nw < (size_t)nr; nw++) {
             // First, scan ahead into the buf, checking the state machine.
             switch (bufp[nw]) {
             case ']':
               if (end_cdata < 2)   end_cdata += 1;  // saturating counter
               continue;  // keep scanning

@@ -266,11 +266,11 @@
             // CDATA sequences into the compilation log.
             break;
           }
           // Now nw is the number of characters to write, usually == nr.
           file->write(bufp, nw);
-          if (nw < nr) {
+          if (nw < (size_t)nr) {
             // We are about to go around the loop again.
             // But first, disrupt the ]]> by closing and reopening the quote.
             file->print_raw("]]><![CDATA[");
             end_cdata = 0;  // reset state machine
           }
< prev index next >