Skip to content

Commit f69c785

Browse files
committed
v1.8.1
2 parents 0c67152 + 7738c19 commit f69c785

File tree

3 files changed

+27
-30
lines changed

3 files changed

+27
-30
lines changed

doc/manual.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The Ninja build system
22
======================
3-
v1.8.0, Sep 2017
3+
v1.8.1, Sep 2017
44

55

66
Introduction

src/includes_normalize_test.cc

Lines changed: 25 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -108,36 +108,33 @@ TEST(IncludesNormalize, LongInvalidPath) {
108108
normalizer.Normalize(kLongInputString, &result, &err));
109109
EXPECT_EQ("path too long", err);
110110

111-
const char kExactlyMaxPath[] =
112-
"012345678\\"
113-
"012345678\\"
114-
"012345678\\"
115-
"012345678\\"
116-
"012345678\\"
117-
"012345678\\"
118-
"012345678\\"
119-
"012345678\\"
120-
"012345678\\"
121-
"012345678\\"
122-
"012345678\\"
123-
"012345678\\"
124-
"012345678\\"
125-
"012345678\\"
126-
"012345678\\"
127-
"012345678\\"
128-
"012345678\\"
129-
"012345678\\"
130-
"012345678\\"
131-
"012345678\\"
132-
"012345678\\"
133-
"012345678\\"
134-
"012345678\\"
135-
"012345678\\"
136-
"012345678\\"
137-
"0123456789";
111+
112+
// Construct max size path having cwd prefix.
113+
// kExactlyMaxPath = "$cwd\\a\\aaaa...aaaa\0";
114+
char kExactlyMaxPath[_MAX_PATH + 1];
115+
ASSERT_NE(_getcwd(kExactlyMaxPath, sizeof kExactlyMaxPath), NULL);
116+
117+
int cwd_len = strlen(kExactlyMaxPath);
118+
ASSERT_LE(cwd_len + 3 + 1, _MAX_PATH)
119+
kExactlyMaxPath[cwd_len] = '\\';
120+
kExactlyMaxPath[cwd_len + 1] = 'a';
121+
kExactlyMaxPath[cwd_len + 2] = '\\';
122+
123+
kExactlyMaxPath[cwd_len + 3] = 'a';
124+
125+
for (int i = cwd_len + 4; i < _MAX_PATH; ++i) {
126+
if (i > cwd_len + 4 && i < _MAX_PATH - 1 && i % 10 == 0)
127+
kExactlyMaxPath[i] = '\\';
128+
else
129+
kExactlyMaxPath[i] = 'a';
130+
}
131+
132+
kExactlyMaxPath[_MAX_PATH] = '\0';
133+
EXPECT_EQ(strlen(kExactlyMaxPath), _MAX_PATH);
134+
138135
string forward_slashes(kExactlyMaxPath);
139136
replace(forward_slashes.begin(), forward_slashes.end(), '\\', '/');
140137
// Make sure a path that's exactly _MAX_PATH long is canonicalized.
141-
EXPECT_EQ(forward_slashes,
138+
EXPECT_EQ(forward_slashes.substr(cwd_len + 1),
142139
NormalizeAndCheckNoError(kExactlyMaxPath));
143140
}

src/version.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
#include "util.h"
2020

21-
const char* kNinjaVersion = "1.8.0";
21+
const char* kNinjaVersion = "1.8.1";
2222

2323
void ParseVersion(const string& version, int* major, int* minor) {
2424
size_t end = version.find('.');

0 commit comments

Comments
 (0)