aboutsummaryrefslogtreecommitdiff
path: root/src/google/protobuf/descriptor.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fix initialization with Visual StudioAdam Cozzette2018-07-061-70/+27
| | | | | | | | | | | | It appears that Visual Studio does not work well with std::once_flag because it has a bug causing it to initialize that during dynamic initialization instead of constant initialization. This change works around the problem by using function static initializers instead. @gerben-s originally wrote this change for the Google-internal codebase but I am just cherry-picking it here. This fixes #4773.
* Make sure to delete temporary maps used by FileDescriptorTablesAdam Cozzette2018-05-241-8/+6
| | | | | | | I ran the tcmalloc heap checker in draconian mode, and it reported some heap allocations that were still reachable when protobuf-test exited. To fix that, I updated FileDescriptorTables to make sure its temporary heap-allocated maps are deleted when it is destroyed.
* source code info for interpreted options; fix source code info for extension ↵Joshua Humphries2018-03-261-34/+196
| | | | | | | | | range options (#4342) * when interpreting options, rewrite file descriptor's source code info - so that interpreted option paths have correct location information - so that corresponding uninterpreted option paths are removed also includes a fix to source code locations for extension range options
* Integrated internal changes from GoogleAdam Cozzette2018-03-131-26/+30
|
* Integrated internal changes from GoogleAdam Cozzette2017-12-011-47/+65
|
* Fix undefined memory management found by Clang's sanitizers.John Millikin2017-10-161-2/+4
| | | | See https://github.com/google/protobuf/issues/3752 for context.
* Integrated internal changes from GoogleAdam Cozzette2017-09-141-60/+277
|
* Merge from Google internal for 3.4 releaseJisi Liu2017-07-181-13/+79
|
* Down-integrate from google3.Feng Xiao2017-03-291-192/+487
|
* Merge 3.2.x branch into master (#2648)Paul Yang2017-01-311-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Down-integrate internal changes to github. * Update conformance test failure list. * Explicitly import used class in nano test to avoid random test fail. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * maps_test.js: check whether Symbol is defined before using it (#2524) Symbol is not yet available on older versions of Node.js and so this test fails with them. This change just directly checks whether Symbol is available before we try to use it. * Added well_known_types_embed.cc to CLEANFILES so that it gets cleaned up * Updated Makefile.am to fix out-of-tree builds * Added Bazel genrule for generating well_known_types_embed.cc In pull request #2517 I made this change for the CMake and autotools builds but forgot to do it for the Bazel build. * Update _GNUC_VER to use the correct implementation of atomic operation on Mac. * Add new js file in extra dist. * Bump version number to 3.2.0 * Fixed issue with autoloading - Invalid paths (#2538) * PHP fix int64 decoding (#2516) * fix int64 decoding * fix int64 decoding + tests * Fix int64 decoding on 32-bit machines. * Fix warning in compiler/js/embed.cc embed.cc: In function ‘std::string CEscape(const string&)’: embed.cc:51:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < str.size(); ++i) { ^ * Fix include in auto-generated well_known_types_embed.cc Restore include style fix (e3da722) that has been trampled by auto-generation of well_known_types_embed.cc * Fixed cross compilations with the Autotools build Pull request #2517 caused cross compilations to start failing, because the js_embed binary was being built to run on the target platform instead of on the build machine. This change updates the Autotools build to use the AX_PROG_CXX_FOR_BUILD macro to find a suitable compiler for the build machine and always use that when building js_embed. * Minor fix for autocreated object repeated fields and maps. - If setting/clearing a repeated field/map that was objects, check the class before checking the autocreator. - Just to be paranoid, don’t mutate within copy/mutableCopy for the autocreated classes to ensure there is less chance of issues if someone does something really crazy threading wise. - Some more tests for the internal AutocreatedArray/AutocreatedDictionary classes to ensure things are working as expected. - Add Xcode 8.2 to the full_mac_build.sh supported list. * Fix generation of extending nested messages in JavaScript (#2439) * Fix generation of extending nested messages in JavaScript * Added missing test8.proto to build * Fix generated code when there is no namespace but there is enum definition. * Decoding unknown field should succeed. * Add embed.cc in src/Makefile.am to fix dist check. * Fixed "make distcheck" for the Autotools build To make the test pass I needed to fix out-of-tree builds and update EXTRA_DIST and CLEANFILES. * Remove redundent embed.cc from src/Makefile.am * Update version number to 3.2.0-rc.1 (#2578) * Change protoc-artifacts version to 3.2.0-rc.1 * Update version number to 3.2.0rc2 * Update change logs for 3.2.0 release. * Update php README * Update upb, fixes some bugs (including a hash table problem). (#2611) * Update upb, fixes some bugs (including a hash table problem). * Ruby: added a test for the previous hash table corruption. Verified that this triggers the bug in the currently released version. * Ruby: bugfix for SEGV. * Ruby: removed old code for dup'ing defs. * Reverting deployment target to 7.0 (#2618) The Protobuf library doesn’t require the 7.1 deployment target so reverting it back to 7.0 * Fix typo that breaks builds on big-endian (#2632) * Bump version number to 3.2.0
* Allow OneofOptions to be extended in proto3.Jie Luo2017-01-251-1/+1
|
* Integrated internal changes from GoogleAdam Cozzette2016-11-171-106/+175
|
* Do strict enum name checking only for proto3Adam Cozzette2016-10-101-5/+14
| | | | | | | | There seem to already be .proto files out there that have conflicting enum names, which will not be able to build successfully for some languages (like C#). To prevent this problem from spreading, let's make it an error for proto3 but just issue a warning for proto2. This fixes issue #2179.
* Integrate internal changesBo Yang2016-10-101-11/+187
|
* Integrated internal changes from GoogleAdam Cozzette2016-06-291-1/+20
| | | | This includes all internal changes from around May 20 to now.
* Down integrate from Google internal.Jisi Liu2016-04-281-12/+21
|
* Merge branch master into v3.0.0-beta-2Feng Xiao2015-12-211-3/+28
|\
| * Initialize singleton instance by GoogleOnceInit()Kenichiro IDA2015-12-191-2/+24
| |
| * Alter FileDescriptorTables::kEmpty to GetEmptyInstance()Kenichiro IDA2015-12-171-3/+6
| |
* | Down-integrate from internal code base.Feng Xiao2015-12-111-11/+24
|/
* Get VS 2015 to use const int definitionsBruce Dawson2015-10-291-1/+1
| | | | | | | | | | | | | | | | | | VC++ up to VS 2015 RTM does not require explicit storage allocation for static const integers declared in classes. VS 2015 Update 1 requires these storage definitions in some cases. It's unclear exactly what cases - simple tests work with and without the explicit storage allocation. Many previous versions of VC++ have theoretically *allowed* a definition to supply storage, but tests on VC++ 2013 show that this doesn't actually work correctly - it leads to duplicate definition errors in Chromium. So, the change is scoped to VS 2015 only. This change also updates the generated files to match the new generator. TL;DR - this change is necessary in order for Chromium to build with VS 2015 Update 1.
* Down-integrate from google internal.Jisi Liu2015-10-051-3/+88
|
* Down-integrate from google3.Feng Xiao2015-08-221-3/+21
|
* down-integrate internal changesBo Yang2015-05-211-11/+172
|
* Down integrate from Google internal branch for C++ and Java.Jisi Liu2015-02-281-28/+60
| | | | | | | | - Maps for C++ lite - C++ Arena optimizations. - Java Lite runtime code size optimization. Change-Id: I7537a4357c1cb385d23f9e8aa7ffdfeefe079f13
* Delete some globals in ShutdownProtobufLibrary().Feng Xiao2014-12-031-0/+5
|
* Get rid of some build warnings.Feng Xiao2014-12-021-0/+2
|
* Down-integrate from internal code base.Feng Xiao2014-11-201-2/+14
|
* Down-integrate from internal code base (C++ maps support).Feng Xiao2014-11-141-6/+7
|
* Merge branch 'typofixes-vlajos-20141108' of ↵Feng Xiao2014-11-111-1/+1
|\ | | | | | | | | | | | | https://github.com/vlajos/protobuf into typo Conflicts: src/google/protobuf/compiler/java/java_file.cc
| * typo fixes - https://github.com/vlajos/misspell_fixerVeres Lajos2014-11-081-1/+1
| |
* | Down-integrate from internal code base.Feng Xiao2014-11-101-113/+606
|/
* Replace links to code.google.com/protobuf with ↵Feng Xiao2014-10-011-1/+1
| | | | developers.google.com/protocol-buffers
* add #ifdef _MSC_VERjieluo@google.com2014-08-011-2/+2
|
* change some files to pass MSVC 2013jieluo@google.com2014-07-311-0/+6
|
* delete unused variablejieluo@google.com2014-07-181-2/+0
|
* down integrate to svnjieluo@google.com2014-07-181-136/+601
|
* Down-integrate pending changes from internal repository after previous release.liujisi@google.com2014-05-281-8/+12
|
* Replace kEmptyString wth OnceInit initialized string*xiaofeng@google.com2014-02-131-5/+3
|
* Generate a warning for duplicated enum values, when allow_alias option isn'tliujisi@google.com2012-12-281-6/+16
| | | | set.
* Make custom option able to work for -f-no-rtti; Fix remaining death tests ↵liujisi@google.com2012-12-051-1/+5
| | | | for gtest 1.6
* Use string::size_type instead of int for results of string.find() etc. -- ↵xiaofeng@google.com2012-09-271-1/+1
| | | | patch from hans
* Down-integrate from internal branchxiaofeng@google.com2012-09-221-111/+549
|
* Add an intermediate method to propagate the friendship access to nested ↵liujisi@google.com2011-02-071-3/+6
| | | | classes as a workaround for old compilers (e.g. gcc 3.4)
* Submit recent changes from internal branch. See CHANGES.txt for more details.liujisi@google.com2010-11-021-9/+98
|
* Allow services with lite runtime when using rpc generator plugin.kenton@google.com2010-04-191-2/+6
|
* Fix build on MinGW/Win32 (including implementing Subprocess using ↵kenton@google.com2009-12-191-4/+21
| | | | CreateProcess()).
* Ensure that 'once' objects are declared using the macro. This is either the ↵temporal2009-12-181-1/+1
| | | | third or fourth time I've screwed this up when down-integrating, because our internal code does not require the macro (it's not portable) and on Linux a pthread_once_t that is zero-initialized just happens to work. So, I only discover the problem when I test on Mac, then kick myself for making the same mistake yet again. No more! This time, I have renamed GoogleOnceType to ProtobufOnceType, thus making the type name differ from our internal code. As a result, if you don't update the decls to use the macros, they won't compile. Hah! Take that, future self!
* Massive roll-up of changes. See CHANGES.txt.kenton@google.com2009-12-181-12/+8
|
* Use the nice macro to declare once-init control objects, like good little ↵temporal2009-08-011-1/+1
| | | | coders should. Otherwise the initialization routines never run on Mac. TODO: Investigate how this was broken.