comparison src/netbeans.c @ 15470:55ccc2d353bd v8.1.0743

patch 8.1.0743: giving error messages is not flexible commit https://github.com/vim/vim/commit/f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jan 13 23:38:42 2019 +0100 patch 8.1.0743: giving error messages is not flexible Problem: Giving error messages is not flexible. Solution: Add semsg(). Change argument from "char_u *" to "char *", also for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes #3302) Also make emsg() accept a "char *" argument. Get rid of an enormous number of type casts.
author Bram Moolenaar <Bram@vim.org>
date Sun, 13 Jan 2019 23:45:08 +0100
parents 1d2b5c016f17
children 98c35d312987
comparison
equal deleted inserted replaced
15469:bc9b5261ed01 15470:55ccc2d353bd
255 */ 255 */
256 if (mch_stat(file, &st) == 0 && (st.st_mode & 0077) != 0) 256 if (mch_stat(file, &st) == 0 && (st.st_mode & 0077) != 0)
257 { 257 {
258 nbdebug(("Wrong access mode for NetBeans connection info file: \"%s\"\n", 258 nbdebug(("Wrong access mode for NetBeans connection info file: \"%s\"\n",
259 file)); 259 file));
260 EMSG2(_("E668: Wrong access mode for NetBeans connection info file: \"%s\""), 260 semsg(_("E668: Wrong access mode for NetBeans connection info file: \"%s\""),
261 file); 261 file);
262 return FAIL; 262 return FAIL;
263 } 263 }
264 #endif 264 #endif
265 265
475 bufno = strtol((char *)cmd, &verb, 10); 475 bufno = strtol((char *)cmd, &verb, 10);
476 476
477 if (*verb != ':') 477 if (*verb != ':')
478 { 478 {
479 nbdebug((" missing colon: %s\n", cmd)); 479 nbdebug((" missing colon: %s\n", cmd));
480 EMSG2("E627: missing colon: %s", cmd); 480 semsg("E627: missing colon: %s", cmd);
481 return; 481 return;
482 } 482 }
483 ++verb; /* skip colon */ 483 ++verb; /* skip colon */
484 484
485 for (q = verb; *q; q++) 485 for (q = verb; *q; q++)
499 } 499 }
500 500
501 if (isfunc < 0) 501 if (isfunc < 0)
502 { 502 {
503 nbdebug((" missing ! or / in: %s\n", cmd)); 503 nbdebug((" missing ! or / in: %s\n", cmd));
504 EMSG2("E628: missing ! or / in: %s", cmd); 504 semsg("E628: missing ! or / in: %s", cmd);
505 return; 505 return;
506 } 506 }
507 507
508 r_cmdno = strtol(q, &q, 10); 508 r_cmdno = strtol(q, &q, 10);
509 509
516 * This happens because the ExtEd can send a command or 2 after 516 * This happens because the ExtEd can send a command or 2 after
517 * doing a stopDocumentListen command. It doesn't harm anything 517 * doing a stopDocumentListen command. It doesn't harm anything
518 * so I'm disabling it except for debugging. 518 * so I'm disabling it except for debugging.
519 */ 519 */
520 nbdebug(("nb_parse_cmd: Command error for \"%s\"\n", cmd)); 520 nbdebug(("nb_parse_cmd: Command error for \"%s\"\n", cmd));
521 EMSG("E629: bad return from nb_do_cmd"); 521 emsg("E629: bad return from nb_do_cmd");
522 #endif 522 #endif
523 } 523 }
524 } 524 }
525 525
526 struct nbbuf_struct 526 struct nbbuf_struct
1030 long linenum = 0; 1030 long linenum = 0;
1031 #ifdef FEAT_SIGNS 1031 #ifdef FEAT_SIGNS
1032 if (buf == NULL || buf->bufp == NULL) 1032 if (buf == NULL || buf->bufp == NULL)
1033 { 1033 {
1034 nbdebug((" Invalid buffer identifier in getAnno\n")); 1034 nbdebug((" Invalid buffer identifier in getAnno\n"));
1035 EMSG("E652: Invalid buffer identifier in getAnno"); 1035 emsg("E652: Invalid buffer identifier in getAnno");
1036 retval = FAIL; 1036 retval = FAIL;
1037 } 1037 }
1038 else 1038 else
1039 { 1039 {
1040 int serNum; 1040 int serNum;
1053 long len = 0; 1053 long len = 0;
1054 1054
1055 if (buf == NULL || buf->bufp == NULL) 1055 if (buf == NULL || buf->bufp == NULL)
1056 { 1056 {
1057 nbdebug((" invalid buffer identifier in getLength\n")); 1057 nbdebug((" invalid buffer identifier in getLength\n"));
1058 EMSG("E632: invalid buffer identifier in getLength"); 1058 emsg("E632: invalid buffer identifier in getLength");
1059 retval = FAIL; 1059 retval = FAIL;
1060 } 1060 }
1061 else 1061 else
1062 { 1062 {
1063 len = get_buf_size(buf->bufp); 1063 len = get_buf_size(buf->bufp);
1075 char_u *line; 1075 char_u *line;
1076 1076
1077 if (buf == NULL || buf->bufp == NULL) 1077 if (buf == NULL || buf->bufp == NULL)
1078 { 1078 {
1079 nbdebug((" invalid buffer identifier in getText\n")); 1079 nbdebug((" invalid buffer identifier in getText\n"));
1080 EMSG("E633: invalid buffer identifier in getText"); 1080 emsg("E633: invalid buffer identifier in getText");
1081 retval = FAIL; 1081 retval = FAIL;
1082 } 1082 }
1083 else 1083 else
1084 { 1084 {
1085 len = get_buf_size(buf->bufp); 1085 len = get_buf_size(buf->bufp);
1139 } 1139 }
1140 1140
1141 if (buf == NULL || buf->bufp == NULL) 1141 if (buf == NULL || buf->bufp == NULL)
1142 { 1142 {
1143 nbdebug((" invalid buffer identifier in remove\n")); 1143 nbdebug((" invalid buffer identifier in remove\n"));
1144 EMSG("E634: invalid buffer identifier in remove"); 1144 emsg("E634: invalid buffer identifier in remove");
1145 retval = FAIL; 1145 retval = FAIL;
1146 } 1146 }
1147 else 1147 else
1148 { 1148 {
1149 netbeansFireChanges = FALSE; 1149 netbeansFireChanges = FALSE;
1309 */ 1309 */
1310 1310
1311 if (buf == NULL || buf->bufp == NULL) 1311 if (buf == NULL || buf->bufp == NULL)
1312 { 1312 {
1313 nbdebug((" invalid buffer identifier in insert\n")); 1313 nbdebug((" invalid buffer identifier in insert\n"));
1314 EMSG("E635: invalid buffer identifier in insert"); 1314 emsg("E635: invalid buffer identifier in insert");
1315 retval = FAIL; 1315 retval = FAIL;
1316 } 1316 }
1317 else if (args != NULL) 1317 else if (args != NULL)
1318 { 1318 {
1319 int ff_detected = EOL_UNKNOWN; 1319 int ff_detected = EOL_UNKNOWN;
1469 { 1469 {
1470 /* Create a buffer without a name. */ 1470 /* Create a buffer without a name. */
1471 if (buf == NULL) 1471 if (buf == NULL)
1472 { 1472 {
1473 nbdebug((" invalid buffer identifier in create\n")); 1473 nbdebug((" invalid buffer identifier in create\n"));
1474 EMSG("E636: invalid buffer identifier in create"); 1474 emsg("E636: invalid buffer identifier in create");
1475 return FAIL; 1475 return FAIL;
1476 } 1476 }
1477 VIM_CLEAR(buf->displayname); 1477 VIM_CLEAR(buf->displayname);
1478 1478
1479 netbeansReadFile = 0; /* don't try to open disk file */ 1479 netbeansReadFile = 0; /* don't try to open disk file */
1519 else if (streq((char *)cmd, "startDocumentListen")) 1519 else if (streq((char *)cmd, "startDocumentListen"))
1520 { 1520 {
1521 if (buf == NULL) 1521 if (buf == NULL)
1522 { 1522 {
1523 nbdebug((" invalid buffer identifier in startDocumentListen\n")); 1523 nbdebug((" invalid buffer identifier in startDocumentListen\n"));
1524 EMSG("E637: invalid buffer identifier in startDocumentListen"); 1524 emsg("E637: invalid buffer identifier in startDocumentListen");
1525 return FAIL; 1525 return FAIL;
1526 } 1526 }
1527 buf->fireChanges = 1; 1527 buf->fireChanges = 1;
1528 /* =====================================================================*/ 1528 /* =====================================================================*/
1529 } 1529 }
1530 else if (streq((char *)cmd, "stopDocumentListen")) 1530 else if (streq((char *)cmd, "stopDocumentListen"))
1531 { 1531 {
1532 if (buf == NULL) 1532 if (buf == NULL)
1533 { 1533 {
1534 nbdebug((" invalid buffer identifier in stopDocumentListen\n")); 1534 nbdebug((" invalid buffer identifier in stopDocumentListen\n"));
1535 EMSG("E638: invalid buffer identifier in stopDocumentListen"); 1535 emsg("E638: invalid buffer identifier in stopDocumentListen");
1536 return FAIL; 1536 return FAIL;
1537 } 1537 }
1538 buf->fireChanges = 0; 1538 buf->fireChanges = 0;
1539 if (buf->bufp != NULL && buf->bufp->b_was_netbeans_file) 1539 if (buf->bufp != NULL && buf->bufp->b_was_netbeans_file)
1540 { 1540 {
1541 if (!buf->bufp->b_netbeans_file) 1541 if (!buf->bufp->b_netbeans_file)
1542 { 1542 {
1543 nbdebug(("E658: NetBeans connection lost for buffer %ld\n", buf->bufp->b_fnum)); 1543 nbdebug(("E658: NetBeans connection lost for buffer %ld\n", buf->bufp->b_fnum));
1544 EMSGN(_("E658: NetBeans connection lost for buffer %ld"), 1544 semsg(_("E658: NetBeans connection lost for buffer %ld"),
1545 buf->bufp->b_fnum); 1545 buf->bufp->b_fnum);
1546 } 1546 }
1547 else 1547 else
1548 { 1548 {
1549 /* NetBeans uses stopDocumentListen when it stops editing 1549 /* NetBeans uses stopDocumentListen when it stops editing
1559 else if (streq((char *)cmd, "setTitle")) 1559 else if (streq((char *)cmd, "setTitle"))
1560 { 1560 {
1561 if (buf == NULL) 1561 if (buf == NULL)
1562 { 1562 {
1563 nbdebug((" invalid buffer identifier in setTitle\n")); 1563 nbdebug((" invalid buffer identifier in setTitle\n"));
1564 EMSG("E639: invalid buffer identifier in setTitle"); 1564 emsg("E639: invalid buffer identifier in setTitle");
1565 return FAIL; 1565 return FAIL;
1566 } 1566 }
1567 vim_free(buf->displayname); 1567 vim_free(buf->displayname);
1568 buf->displayname = nb_unquote(args, NULL); 1568 buf->displayname = nb_unquote(args, NULL);
1569 /* =====================================================================*/ 1569 /* =====================================================================*/
1571 else if (streq((char *)cmd, "initDone")) 1571 else if (streq((char *)cmd, "initDone"))
1572 { 1572 {
1573 if (buf == NULL || buf->bufp == NULL) 1573 if (buf == NULL || buf->bufp == NULL)
1574 { 1574 {
1575 nbdebug((" invalid buffer identifier in initDone\n")); 1575 nbdebug((" invalid buffer identifier in initDone\n"));
1576 EMSG("E640: invalid buffer identifier in initDone"); 1576 emsg("E640: invalid buffer identifier in initDone");
1577 return FAIL; 1577 return FAIL;
1578 } 1578 }
1579 do_update = 1; 1579 do_update = 1;
1580 buf->initDone = TRUE; 1580 buf->initDone = TRUE;
1581 nb_set_curbuf(buf->bufp); 1581 nb_set_curbuf(buf->bufp);
1592 buf_T *bufp; 1592 buf_T *bufp;
1593 1593
1594 if (buf == NULL) 1594 if (buf == NULL)
1595 { 1595 {
1596 nbdebug((" invalid buffer identifier in setBufferNumber\n")); 1596 nbdebug((" invalid buffer identifier in setBufferNumber\n"));
1597 EMSG("E641: invalid buffer identifier in setBufferNumber"); 1597 emsg("E641: invalid buffer identifier in setBufferNumber");
1598 return FAIL; 1598 return FAIL;
1599 } 1599 }
1600 path = (char_u *)nb_unquote(args, NULL); 1600 path = (char_u *)nb_unquote(args, NULL);
1601 if (path == NULL) 1601 if (path == NULL)
1602 return FAIL; 1602 return FAIL;
1603 bufp = buflist_findname(path); 1603 bufp = buflist_findname(path);
1604 vim_free(path); 1604 vim_free(path);
1605 if (bufp == NULL) 1605 if (bufp == NULL)
1606 { 1606 {
1607 nbdebug((" File %s not found in setBufferNumber\n", args)); 1607 nbdebug((" File %s not found in setBufferNumber\n", args));
1608 EMSG2("E642: File %s not found in setBufferNumber", args); 1608 semsg("E642: File %s not found in setBufferNumber", args);
1609 return FAIL; 1609 return FAIL;
1610 } 1610 }
1611 buf->bufp = bufp; 1611 buf->bufp = bufp;
1612 buf->nbbuf_number = bufp->b_fnum; 1612 buf->nbbuf_number = bufp->b_fnum;
1613 1613
1628 else if (streq((char *)cmd, "setFullName")) 1628 else if (streq((char *)cmd, "setFullName"))
1629 { 1629 {
1630 if (buf == NULL) 1630 if (buf == NULL)
1631 { 1631 {
1632 nbdebug((" invalid buffer identifier in setFullName\n")); 1632 nbdebug((" invalid buffer identifier in setFullName\n"));
1633 EMSG("E643: invalid buffer identifier in setFullName"); 1633 emsg("E643: invalid buffer identifier in setFullName");
1634 return FAIL; 1634 return FAIL;
1635 } 1635 }
1636 vim_free(buf->displayname); 1636 vim_free(buf->displayname);
1637 buf->displayname = nb_unquote(args, NULL); 1637 buf->displayname = nb_unquote(args, NULL);
1638 1638
1651 else if (streq((char *)cmd, "editFile")) 1651 else if (streq((char *)cmd, "editFile"))
1652 { 1652 {
1653 if (buf == NULL) 1653 if (buf == NULL)
1654 { 1654 {
1655 nbdebug((" invalid buffer identifier in editFile\n")); 1655 nbdebug((" invalid buffer identifier in editFile\n"));
1656 EMSG("E644: invalid buffer identifier in editFile"); 1656 emsg("E644: invalid buffer identifier in editFile");
1657 return FAIL; 1657 return FAIL;
1658 } 1658 }
1659 /* Edit a file: like create + setFullName + read the file. */ 1659 /* Edit a file: like create + setFullName + read the file. */
1660 vim_free(buf->displayname); 1660 vim_free(buf->displayname);
1661 buf->displayname = nb_unquote(args, NULL); 1661 buf->displayname = nb_unquote(args, NULL);
1679 { 1679 {
1680 nbdebug((" invalid buffer identifier in setVisible\n")); 1680 nbdebug((" invalid buffer identifier in setVisible\n"));
1681 /* This message was commented out, probably because it can 1681 /* This message was commented out, probably because it can
1682 * happen when shutting down. */ 1682 * happen when shutting down. */
1683 if (p_verbose > 0) 1683 if (p_verbose > 0)
1684 EMSG("E645: invalid buffer identifier in setVisible"); 1684 emsg("E645: invalid buffer identifier in setVisible");
1685 return FAIL; 1685 return FAIL;
1686 } 1686 }
1687 if (streq((char *)args, "T") && buf->bufp != curbuf) 1687 if (streq((char *)args, "T") && buf->bufp != curbuf)
1688 { 1688 {
1689 exarg_T exarg; 1689 exarg_T exarg;
1719 { 1719 {
1720 nbdebug((" invalid buffer identifier in setModified\n")); 1720 nbdebug((" invalid buffer identifier in setModified\n"));
1721 /* This message was commented out, probably because it can 1721 /* This message was commented out, probably because it can
1722 * happen when shutting down. */ 1722 * happen when shutting down. */
1723 if (p_verbose > 0) 1723 if (p_verbose > 0)
1724 EMSG("E646: invalid buffer identifier in setModified"); 1724 emsg("E646: invalid buffer identifier in setModified");
1725 return FAIL; 1725 return FAIL;
1726 } 1726 }
1727 prev_b_changed = buf->bufp->b_changed; 1727 prev_b_changed = buf->bufp->b_changed;
1728 if (streq((char *)args, "T")) 1728 if (streq((char *)args, "T"))
1729 buf->bufp->b_changed = TRUE; 1729 buf->bufp->b_changed = TRUE;
1801 #endif 1801 #endif
1802 1802
1803 if (buf == NULL || buf->bufp == NULL) 1803 if (buf == NULL || buf->bufp == NULL)
1804 { 1804 {
1805 nbdebug((" invalid buffer identifier in setDot\n")); 1805 nbdebug((" invalid buffer identifier in setDot\n"));
1806 EMSG("E647: invalid buffer identifier in setDot"); 1806 emsg("E647: invalid buffer identifier in setDot");
1807 return FAIL; 1807 return FAIL;
1808 } 1808 }
1809 1809
1810 nb_set_curbuf(buf->bufp); 1810 nb_set_curbuf(buf->bufp);
1811 1811
1854 #endif 1854 #endif
1855 1855
1856 if (buf == NULL) 1856 if (buf == NULL)
1857 { 1857 {
1858 nbdebug((" invalid buffer identifier in close\n")); 1858 nbdebug((" invalid buffer identifier in close\n"));
1859 EMSG("E648: invalid buffer identifier in close"); 1859 emsg("E648: invalid buffer identifier in close");
1860 return FAIL; 1860 return FAIL;
1861 } 1861 }
1862 1862
1863 #ifdef NBDEBUG 1863 #ifdef NBDEBUG
1864 if (buf->displayname != NULL) 1864 if (buf->displayname != NULL)
1868 { 1868 {
1869 nbdebug((" invalid buffer identifier in close\n")); 1869 nbdebug((" invalid buffer identifier in close\n"));
1870 /* This message was commented out, probably because it can 1870 /* This message was commented out, probably because it can
1871 * happen when shutting down. */ 1871 * happen when shutting down. */
1872 if (p_verbose > 0) 1872 if (p_verbose > 0)
1873 EMSG("E649: invalid buffer identifier in close"); 1873 emsg("E649: invalid buffer identifier in close");
1874 } 1874 }
1875 nbdebug((" CLOSE %d: %s\n", bufno, name)); 1875 nbdebug((" CLOSE %d: %s\n", bufno, name));
1876 #ifdef FEAT_GUI 1876 #ifdef FEAT_GUI
1877 need_mouse_correct = TRUE; 1877 need_mouse_correct = TRUE;
1878 #endif 1878 #endif
1907 char_u *bg; 1907 char_u *bg;
1908 1908
1909 if (buf == NULL) 1909 if (buf == NULL)
1910 { 1910 {
1911 nbdebug((" invalid buffer identifier in defineAnnoType\n")); 1911 nbdebug((" invalid buffer identifier in defineAnnoType\n"));
1912 EMSG("E650: invalid buffer identifier in defineAnnoType"); 1912 emsg("E650: invalid buffer identifier in defineAnnoType");
1913 return FAIL; 1913 return FAIL;
1914 } 1914 }
1915 1915
1916 cp = (char *)args; 1916 cp = (char *)args;
1917 typeNum = strtol(cp, &cp, 10); 1917 typeNum = strtol(cp, &cp, 10);
1935 } 1935 }
1936 fg = vim_strsave(args); 1936 fg = vim_strsave(args);
1937 bg = vim_strsave(p); 1937 bg = vim_strsave(p);
1938 if (STRLEN(fg) > MAX_COLOR_LENGTH || STRLEN(bg) > MAX_COLOR_LENGTH) 1938 if (STRLEN(fg) > MAX_COLOR_LENGTH || STRLEN(bg) > MAX_COLOR_LENGTH)
1939 { 1939 {
1940 EMSG("E532: highlighting color name too long in defineAnnoType"); 1940 emsg("E532: highlighting color name too long in defineAnnoType");
1941 vim_free(typeName); 1941 vim_free(typeName);
1942 parse_error = TRUE; 1942 parse_error = TRUE;
1943 } 1943 }
1944 else if (typeName != NULL && tooltip != NULL && glyphFile != NULL) 1944 else if (typeName != NULL && tooltip != NULL && glyphFile != NULL)
1945 addsigntype(buf, typeNum, typeName, tooltip, glyphFile, fg, bg); 1945 addsigntype(buf, typeNum, typeName, tooltip, glyphFile, fg, bg);
1966 pos_T *pos; 1966 pos_T *pos;
1967 1967
1968 if (buf == NULL || buf->bufp == NULL) 1968 if (buf == NULL || buf->bufp == NULL)
1969 { 1969 {
1970 nbdebug((" invalid buffer identifier in addAnno\n")); 1970 nbdebug((" invalid buffer identifier in addAnno\n"));
1971 EMSG("E651: invalid buffer identifier in addAnno"); 1971 emsg("E651: invalid buffer identifier in addAnno");
1972 return FAIL; 1972 return FAIL;
1973 } 1973 }
1974 1974
1975 do_update = 1; 1975 do_update = 1;
1976 1976
2350 #ifdef FEAT_GUI 2350 #ifdef FEAT_GUI
2351 # if !defined(FEAT_GUI_X11) && !defined(FEAT_GUI_GTK) \ 2351 # if !defined(FEAT_GUI_X11) && !defined(FEAT_GUI_GTK) \
2352 && !defined(FEAT_GUI_W32) 2352 && !defined(FEAT_GUI_W32)
2353 if (gui.in_use) 2353 if (gui.in_use)
2354 { 2354 {
2355 EMSG(_("E838: netbeans is not supported with this GUI")); 2355 emsg(_("E838: netbeans is not supported with this GUI"));
2356 return; 2356 return;
2357 } 2357 }
2358 # endif 2358 # endif
2359 #endif 2359 #endif
2360 netbeans_open((char *)eap->arg, FALSE); 2360 netbeans_open((char *)eap->arg, FALSE);
2515 { 2515 {
2516 char *cmd = "0:startupDone=0\n"; 2516 char *cmd = "0:startupDone=0\n";
2517 2517
2518 if (NETBEANS_OPEN) 2518 if (NETBEANS_OPEN)
2519 { 2519 {
2520 EMSG(_("E511: netbeans already connected")); 2520 emsg(_("E511: netbeans already connected"));
2521 return; 2521 return;
2522 } 2522 }
2523 2523
2524 if (netbeans_connect(params, doabort) != OK) 2524 if (netbeans_connect(params, doabort) != OK)
2525 return; 2525 return;
3480 msg_scrolled_ign = FALSE; 3480 msg_scrolled_ign = FALSE;
3481 /* add_to_input_buf((char_u *)"\f", 1); */ 3481 /* add_to_input_buf((char_u *)"\f", 1); */
3482 } 3482 }
3483 else 3483 else
3484 { 3484 {
3485 char_u msgbuf[IOSIZE]; 3485 char msgbuf[IOSIZE];
3486 3486
3487 vim_snprintf((char *)msgbuf, IOSIZE, 3487 vim_snprintf(msgbuf, IOSIZE,
3488 _("E505: %s is read-only (add ! to override)"), IObuff); 3488 _("E505: %s is read-only (add ! to override)"), IObuff);
3489 nbdebug((" %s\n", msgbuf)); 3489 nbdebug((" %s\n", msgbuf));
3490 emsg(msgbuf); 3490 emsg(msgbuf);
3491 } 3491 }
3492 } 3492 }
3493 3493