diff --git a/src/libstore/build.cc b/src/libstore/build.cc index d8f8826e1..e60ea2106 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -1379,7 +1379,7 @@ HookReply DerivationGoal::tryBuildHook() break; } s += "\n"; - writeToStderr((unsigned char *) s.c_str(), s.size()); + writeToStderr((unsigned char *) s.data(), s.size()); } debug(format("hook reply is `%1%'") % reply); @@ -2036,12 +2036,12 @@ void DerivationGoal::handleChildOutput(int fd, const string & data) (!hook && fd == builderOut.readSide)) { if (verbosity >= buildVerbosity) - writeToStderr((unsigned char *) data.c_str(), data.size()); - writeFull(fdLogFile, (unsigned char *) data.c_str(), data.size()); + writeToStderr((unsigned char *) data.data(), data.size()); + writeFull(fdLogFile, (unsigned char *) data.data(), data.size()); } if (hook && fd == hook->fromHook.readSide) - writeToStderr((unsigned char *) data.c_str(), data.size()); + writeToStderr((unsigned char *) data.data(), data.size()); } @@ -2409,7 +2409,7 @@ void SubstitutionGoal::handleChildOutput(int fd, const string & data) { assert(fd == logPipe.readSide); if (verbosity >= buildVerbosity) - writeToStderr((unsigned char *) data.c_str(), data.size()); + writeToStderr((unsigned char *) data.data(), data.size()); /* Don't write substitution output to a log file for now. We probably should, though. */ } diff --git a/src/libstore/gc.cc b/src/libstore/gc.cc index 14c8ba0bf..c2e999a6e 100644 --- a/src/libstore/gc.cc +++ b/src/libstore/gc.cc @@ -196,7 +196,7 @@ void LocalStore::addTempRoot(const Path & path) lockFile(fdTempRoots, ltWrite, true); string s = path + '\0'; - writeFull(fdTempRoots, (const unsigned char *) s.c_str(), s.size()); + writeFull(fdTempRoots, (const unsigned char *) s.data(), s.size()); /* Downgrade to a read lock. */ debug(format("downgrading to read lock on `%1%'") % fnTempRoots); diff --git a/src/libstore/references.cc b/src/libstore/references.cc index c1f9e3ba7..282b84893 100644 --- a/src/libstore/references.cc +++ b/src/libstore/references.cc @@ -69,7 +69,7 @@ void RefScanSink::operator () (const unsigned char * data, size_t len) fragment, so search in the concatenation of the tail of the previous fragment and the start of the current fragment. */ string s = tail + string((const char *) data, len > refLength ? refLength : len); - search((const unsigned char *) s.c_str(), s.size(), hashes, seen); + search((const unsigned char *) s.data(), s.size(), hashes, seen); search(data, len, hashes, seen); diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc index 6e9921ede..c77a12870 100644 --- a/src/libstore/remote-store.cc +++ b/src/libstore/remote-store.cc @@ -509,7 +509,7 @@ void RemoteStore::processStderr(Sink * sink, Source * source) if (msg == STDERR_WRITE) { string s = readString(from); if (!sink) throw Error("no sink"); - (*sink)((const unsigned char *) s.c_str(), s.size()); + (*sink)((const unsigned char *) s.data(), s.size()); } else if (msg == STDERR_READ) { if (!source) throw Error("no source"); @@ -521,7 +521,7 @@ void RemoteStore::processStderr(Sink * sink, Source * source) } else { string s = readString(from); - writeToStderr((const unsigned char *) s.c_str(), s.size()); + writeToStderr((const unsigned char *) s.data(), s.size()); } } if (msg == STDERR_ERROR) { diff --git a/src/libutil/hash.cc b/src/libutil/hash.cc index bbfe7847f..697a6b475 100644 --- a/src/libutil/hash.cc +++ b/src/libutil/hash.cc @@ -136,7 +136,7 @@ string printHash32(const Hash & hash) Hash hash2(hash); unsigned int len = hashLength32(hash); - const char * chars = base32Chars.c_str(); + const char * chars = base32Chars.data(); string s(len, '0'); @@ -186,7 +186,7 @@ Hash parseHash32(HashType ht, const string & s) { Hash hash(ht); - const char * chars = base32Chars.c_str(); + const char * chars = base32Chars.data(); for (unsigned int i = 0; i < s.length(); ++i) { char c = s[i]; @@ -271,7 +271,7 @@ Hash hashString(HashType ht, const string & s) Ctx ctx; Hash hash(ht); start(ht, ctx); - update(ht, ctx, (const unsigned char *) s.c_str(), s.length()); + update(ht, ctx, (const unsigned char *) s.data(), s.length()); finish(ht, ctx, hash.hash); return hash; } diff --git a/src/libutil/serialise.cc b/src/libutil/serialise.cc index c4563ffd1..9270806a7 100644 --- a/src/libutil/serialise.cc +++ b/src/libutil/serialise.cc @@ -159,7 +159,7 @@ void writeString(const unsigned char * buf, size_t len, Sink & sink) void writeString(const string & s, Sink & sink) { - writeString((const unsigned char *) s.c_str(), s.size(), sink); + writeString((const unsigned char *) s.data(), s.size(), sink); } diff --git a/src/libutil/util.cc b/src/libutil/util.cc index 0352754f5..42e5519b4 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -236,7 +236,7 @@ void writeFile(const Path & path, const string & s) AutoCloseFD fd = open(path.c_str(), O_WRONLY | O_TRUNC | O_CREAT, 0666); if (fd == -1) throw SysError(format("opening file `%1%'") % path); - writeFull(fd, (unsigned char *) s.c_str(), s.size()); + writeFull(fd, (unsigned char *) s.data(), s.size()); } @@ -263,7 +263,7 @@ string readLine(int fd) void writeLine(int fd, string s) { s += '\n'; - writeFull(fd, (const unsigned char *) s.c_str(), s.size()); + writeFull(fd, (const unsigned char *) s.data(), s.size()); } @@ -485,7 +485,7 @@ void printMsg_(Verbosity level, const format & f) prefix = "\033[" + escVerbosity(level) + "s"; string s = (format("%1%%2%\n") % prefix % f.str()).str(); try { - writeToStderr((const unsigned char *) s.c_str(), s.size()); + writeToStderr((const unsigned char *) s.data(), s.size()); } catch (SysError & e) { /* Ignore failing writes to stderr if we're in an exception handler, otherwise throw an exception. We need to ignore diff --git a/src/nix-store/nix-store.cc b/src/nix-store/nix-store.cc index 2e1d3f044..404da2c51 100644 --- a/src/nix-store/nix-store.cc +++ b/src/nix-store/nix-store.cc @@ -432,7 +432,7 @@ static void opReadLog(Strings opFlags, Strings opArgs) /* !!! Make this run in O(1) memory. */ string log = readFile(logPath); - writeFull(STDOUT_FILENO, (const unsigned char *) log.c_str(), log.size()); + writeFull(STDOUT_FILENO, (const unsigned char *) log.data(), log.size()); } } diff --git a/src/nix-worker/nix-worker.cc b/src/nix-worker/nix-worker.cc index f28905a24..eaa686667 100644 --- a/src/nix-worker/nix-worker.cc +++ b/src/nix-worker/nix-worker.cc @@ -135,7 +135,7 @@ static void sigPollHandler(int sigNo) catch (Error & e) { /* Shouldn't happen. */ string s = "impossible: " + e.msg() + '\n'; - write(STDERR_FILENO, s.c_str(), s.size()); + write(STDERR_FILENO, s.data(), s.size()); throw; } }