• R/O
  • HTTP
  • SSH
  • HTTPS

hengband: コミット

変愚蛮怒のメインリポジトリです


コミットメタ情報

リビジョンc49aee6b5863deb17f6b71da491e79ad78045e36 (tree)
日時2017-07-23 07:10:49
作者Habu <habu@user...>
コミッターHabu

ログメッセージ

Merge branch 'vs-isctype-assert-fix'

* vs-isctype-assert-fix:

(2.2.0.45) Bump version.
gccの警告によりsprintfをstrcpyに変更
isprintに渡す時にunsinged charにキャストすることでisctype.cのアサーションを回避
Revert "(2.2.0.8) #37304 デバッグスポイラー出力時のisctype.cでのAssertionによるランタイムエラーを対策。 / Fix runtime error in output of debug spoiler by isctype.c assertion."

変更サマリ

差分

--- a/src/defines.h
+++ b/src/defines.h
@@ -53,7 +53,7 @@
5353 #define FAKE_VER_MAJOR 12 /*!< ゲームのバージョン番号定義(メジャー番号 + 10) */
5454 #define FAKE_VER_MINOR 2 /*!< ゲームのバージョン番号定義(マイナー番号) */
5555 #define FAKE_VER_PATCH 0 /*!< ゲームのバージョン番号定義(パッチ番号) */
56-#define FAKE_VER_EXTRA 44 /*!< ゲームのバージョン番号定義(エクストラ番号) */
56+#define FAKE_VER_EXTRA 45 /*!< ゲームのバージョン番号定義(エクストラ番号) */
5757
5858
5959 /*!
--- a/src/h-type.h
+++ b/src/h-type.h
@@ -40,11 +40,10 @@
4040 #include <stdint.h>
4141 #endif
4242
43-/*** Special 4-5 letter names for some standard types ***/
43+/*** Special 4 letter names for some standard types ***/
4444
4545 typedef void *vptr; /*!< void型ポインタ定義 / A standard pointer (to "void" because ANSI C says so) */
4646 typedef const char *cptr; /*!< 文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings) */
47-typedef const unsigned char *ucptr; /*!< 非負文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings) */
4847 typedef double real; /*!< doubleをreal型として定義 / Since float's are silly, hard code real numbers as doubles */
4948
5049
--- a/src/wizard1.c
+++ b/src/wizard1.c
@@ -319,7 +319,7 @@ static void kind_info(char *buf, char *dam, char *wgt, char *chance, int *lev, s
319319 }
320320
321321 /* Chance */
322- sprintf(chance, "");
322+ strcpy(chance, "");
323323 for(i = 0; i < 4; i++)
324324 {
325325 char chance_aux[20] = "";
@@ -1934,19 +1934,19 @@ static void spoil_out(cptr str)
19341934 cptr r;
19351935
19361936 /* Line buffer */
1937- static unsigned char roff_buf[256];
1937+ static char roff_buf[256];
19381938
19391939 /* Delay buffer */
1940- static unsigned char roff_waiting_buf[256];
1940+ static char roff_waiting_buf[256];
19411941
19421942 #ifdef JP
19431943 bool iskanji_flag = FALSE;
19441944 #endif
19451945 /* Current pointer into line roff_buf */
1946- static unsigned char *roff_p = roff_buf;
1946+ static char *roff_p = roff_buf;
19471947
19481948 /* Last space saved into roff_buf */
1949- static unsigned char *roff_s = NULL;
1949+ static char *roff_s = NULL;
19501950
19511951 /* Mega-Hack -- Delayed output */
19521952 static bool waiting_output = FALSE;
@@ -1980,14 +1980,14 @@ static void spoil_out(cptr str)
19801980 for (; *str; str++)
19811981 {
19821982 #ifdef JP
1983- unsigned char cbak;
1983+ char cbak;
19841984 bool k_flag = iskanji((unsigned char)(*str));
19851985 #endif
1986- unsigned char ch = *str;
1986+ char ch = *str;
19871987 bool wrap = (ch == '\n');
19881988
19891989 #ifdef JP
1990- if (!isprint(ch) && !k_flag && !iskanji_flag) ch = ' ';
1990+ if (!isprint((unsigned char)ch) && !k_flag && !iskanji_flag) ch = ' ';
19911991 iskanji_flag = k_flag && !iskanji_flag;
19921992 #else
19931993 if (!isprint(ch)) ch = ' ';
@@ -2015,9 +2015,9 @@ static void spoil_out(cptr str)
20152015 #ifdef JP
20162016 bool k_flag_local;
20172017 bool iskanji_flag_local = FALSE;
2018- ucptr tail = str + (k_flag ? 2 : 1);
2018+ cptr tail = str + (k_flag ? 2 : 1);
20192019 #else
2020- ucptr tail = str + 1;
2020+ cptr tail = str + 1;
20212021 #endif
20222022
20232023 for (; *tail; tail++)
@@ -2026,7 +2026,7 @@ static void spoil_out(cptr str)
20262026
20272027 #ifdef JP
20282028 k_flag_local = iskanji((unsigned char)(*tail));
2029- if (isprint(*tail) || k_flag_local || iskanji_flag_local) break;
2029+ if (isprint((unsigned char)*tail) || k_flag_local || iskanji_flag_local) break;
20302030 iskanji_flag_local = k_flag_local && !iskanji_flag_local;
20312031 #else
20322032 if (isprint(*tail)) break;
旧リポジトリブラウザで表示