[roll third_party/pigweed] pw_protobuf: Support decoding from non-seekable Reader

Allowing a StreamDecoder to operate on a non-seekable Reader means that
protobuf messages can be decoded directly from a SocketStream and other
similar streams.

The previous requirement was to support skipping fields, and advancing
to the end of nested length-delimited fields that were not fully read.
Since this use is always forwards, it can be replaced in those streams
by simply reading and discarding the data.

For the requirement of maintaining the bounds of nested length-delimited
fields, the decoder can maintain the position itself as it reads.

StreamDecoder (and StreamDecoder::BytesReader) can still support
seeking where the underlying stream supports it, updating the
tracked position within the bounds of the field.

Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/74721

https://pigweed.googlesource.com/pigweed/pigweed
third_party/pigweed Rolled-Commits: 8d7280029d72cb8..a52946355d98485
Roller-URL: https://ci.chromium.org/b/8826931251144256705
Cq-Cl-Tag: roller-builder:pigweed-sample-project-roller
Cq-Cl-Tag: roller-bid:8826931251144256705
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I0645f54b8a4df8e56f91b0e19ae1539e2c84dd80
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/sample_project/+/76340
Bot-Commit: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
diff --git a/third_party/pigweed b/third_party/pigweed
index 8d72800..a529463 160000
--- a/third_party/pigweed
+++ b/third_party/pigweed
@@ -1 +1 @@
-Subproject commit 8d7280029d72cb804262cf18eed68dc840e9fd0d
+Subproject commit a52946355d98485f3f135ee52cbf00297299c6b6