To: vim_dev@googlegroups.com Subject: Patch 8.0.0777 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.0.0777 Problem: Compiler warnings with 64 bit compiler. Solution: Add type casts. (Mike Williams) Files: src/libvterm/pen.c, src/libvterm/state.c, src/terminal.c *** ../vim-8.0.0776/src/libvterm/src/pen.c 2017-07-25 21:34:42.061132703 +0200 --- src/libvterm/src/pen.c 2017-07-26 21:20:23.164285135 +0200 *************** *** 80,88 **** if(argcount < 3) return argcount; ! col->red = CSI_ARG(args[0]); ! col->green = CSI_ARG(args[1]); ! col->blue = CSI_ARG(args[2]); return 3; --- 80,88 ---- if(argcount < 3) return argcount; ! col->red = (uint8_t)CSI_ARG(args[0]); ! col->green = (uint8_t)CSI_ARG(args[1]); ! col->blue = (uint8_t)CSI_ARG(args[2]); return 3; *** ../vim-8.0.0776/src/libvterm/src/state.c 2017-07-23 22:07:23.045277125 +0200 --- src/libvterm/src/state.c 2017-07-26 21:24:47.186458315 +0200 *************** *** 258,264 **** &state->encoding[state->gr_set]; (*encoding->enc->decode)(encoding->enc, encoding->data, ! codepoints, &npoints, state->gsingle_set ? 1 : len, bytes, &eaten, len); /* There's a chance an encoding (e.g. UTF-8) hasn't found enough bytes yet --- 258,264 ---- &state->encoding[state->gr_set]; (*encoding->enc->decode)(encoding->enc, encoding->data, ! codepoints, &npoints, state->gsingle_set ? 1 : (int)len, bytes, &eaten, len); /* There's a chance an encoding (e.g. UTF-8) hasn't found enough bytes yet *************** *** 411,417 **** #endif vterm_allocator_free(state->vt, codepoints); ! return eaten; } static int on_control(unsigned char control, void *user) --- 411,417 ---- #endif vterm_allocator_free(state->vt, codepoints); ! return (int)eaten; } static int on_control(unsigned char control, void *user) *************** *** 1680,1686 **** state->lineinfo = vterm_allocator_malloc(state->vt, state->rows * sizeof(VTermLineInfo)); state->encoding_utf8.enc = vterm_lookup_encoding(ENC_UTF8, 'u'); ! if(*state->encoding_utf8.enc->init) (*state->encoding_utf8.enc->init)(state->encoding_utf8.enc, state->encoding_utf8.data); vterm_parser_set_callbacks(vt, &parser_callbacks, state); --- 1680,1686 ---- state->lineinfo = vterm_allocator_malloc(state->vt, state->rows * sizeof(VTermLineInfo)); state->encoding_utf8.enc = vterm_lookup_encoding(ENC_UTF8, 'u'); ! if(*state->encoding_utf8.enc->init != NULL) (*state->encoding_utf8.enc->init)(state->encoding_utf8.enc, state->encoding_utf8.data); vterm_parser_set_callbacks(vt, &parser_callbacks, state); *** ../vim-8.0.0776/src/terminal.c 2017-07-25 23:08:43.488170391 +0200 --- src/terminal.c 2017-07-26 21:25:48.254035785 +0200 *************** *** 35,40 **** --- 35,41 ---- * TODO: * - include functions from #1871 * - do not store terminal buffer in viminfo. Or prefix term:// ? + * - Make CTRL-W . send CTRL-W to terminal? * - Add a scrollback buffer (contains lines to scroll off the top). * Can use the buf_T lines, store attributes somewhere else? * - When the job ends: *************** *** 204,210 **** { int i; size_t len = STRLEN(cmd) + 10; ! char_u *p = alloc(len); for (i = 1; p != NULL; ++i) { --- 205,211 ---- { int i; size_t len = STRLEN(cmd) + 10; ! char_u *p = alloc((int)len); for (i = 1; p != NULL; ++i) { *************** *** 301,307 **** { if (*p == NL) break; ! p += utf_ptr2len_len(p, len - (p - msg)); } len_now = p - msg - done; vterm_input_write(vterm, (char *)msg + done, len_now); --- 302,308 ---- { if (*p == NL) break; ! p += utf_ptr2len_len(p, (int)(len - (p - msg))); } len_now = p - msg - done; vterm_input_write(vterm, (char *)msg + done, len_now); *************** *** 453,459 **** vterm_keyboard_unichar(vterm, c, mod); /* Read back the converted escape sequence. */ ! return vterm_output_read(vterm, buf, KEY_BUF_LEN); } /* --- 454,460 ---- vterm_keyboard_unichar(vterm, c, mod); /* Read back the converted escape sequence. */ ! return (int)vterm_output_read(vterm, buf, KEY_BUF_LEN); } /* *************** *** 540,546 **** if (len > 0) /* TODO: if FAIL is returned, stop? */ channel_send(curbuf->b_term->tl_job->jv_channel, PART_IN, ! (char_u *)buf, len, NULL); } } --- 541,547 ---- if (len > 0) /* TODO: if FAIL is returned, stop? */ channel_send(curbuf->b_term->tl_job->jv_channel, PART_IN, ! (char_u *)buf, (int)len, NULL); } } *************** *** 1056,1062 **** else txt = (char_u *)_("finished"); len = 9 + STRLEN(term->tl_buffer->b_fname) + STRLEN(txt); ! term->tl_status_text = alloc(len); if (term->tl_status_text != NULL) vim_snprintf((char *)term->tl_status_text, len, "%s [%s]", term->tl_buffer->b_fname, txt); --- 1057,1063 ---- else txt = (char_u *)_("finished"); len = 9 + STRLEN(term->tl_buffer->b_fname) + STRLEN(txt); ! term->tl_status_text = alloc((int)len); if (term->tl_status_text != NULL) vim_snprintf((char *)term->tl_status_text, len, "%s [%s]", term->tl_buffer->b_fname, txt); *** ../vim-8.0.0776/src/version.c 2017-07-25 23:31:06.886518504 +0200 --- src/version.c 2017-07-26 21:25:59.557957573 +0200 *************** *** 771,772 **** --- 771,774 ---- { /* Add new patch number below this line */ + /**/ + 777, /**/ -- hundred-and-one symptoms of being an internet addict: 255. You work for a newspaper and your editor asks you to write an article about Internet addiction...in the "first person." /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///