Fixed binary size issue due to embedded checkpoint data.
Fixed OSX compilation issues due to random lmdb resize points. Fixed infinite loop bug when calling core::get_block_template(..).
This commit is contained in:
parent
2b2ae36724
commit
2e293a563e
7 changed files with 15 additions and 9 deletions
|
@ -30,6 +30,7 @@
|
|||
#include <boost/filesystem.hpp>
|
||||
#include <memory> // std::unique_ptr
|
||||
#include <cstring> // memcpy
|
||||
#include <random>
|
||||
|
||||
#include "cryptonote_core/cryptonote_format_utils.h"
|
||||
#include "crypto/crypto.h"
|
||||
|
|
|
@ -35,3 +35,4 @@ else()
|
|||
set_target_properties(blocks PROPERTIES LINKER_LANGUAGE C)
|
||||
endif()
|
||||
|
||||
|
||||
|
|
Binary file not shown.
BIN
src/blocks/checkpoints.dat
Normal file
BIN
src/blocks/checkpoints.dat
Normal file
Binary file not shown.
|
@ -511,8 +511,8 @@ namespace cryptonote
|
|||
// Can not exceed maximum block size
|
||||
if (max_total_size < total_size + tx_it->second.blob_size)
|
||||
{
|
||||
sorted_it++;
|
||||
continue;
|
||||
sorted_it++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// If adding this tx will make the block size
|
||||
|
@ -522,8 +522,8 @@ namespace cryptonote
|
|||
// to propagate at 60s block times.
|
||||
if ( (total_size + tx_it->second.blob_size) > CRYPTONOTE_GETBLOCKTEMPLATE_MAX_BLOCK_SIZE )
|
||||
{
|
||||
sorted_it++;
|
||||
continue;
|
||||
sorted_it++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// If we've exceeded the penalty free size,
|
||||
|
@ -536,8 +536,8 @@ namespace cryptonote
|
|||
// missing key images
|
||||
if (!is_transaction_ready_to_go(tx_it->second) || have_key_images(k_images, tx_it->second.tx))
|
||||
{
|
||||
sorted_it++;
|
||||
continue;
|
||||
sorted_it++;
|
||||
continue;
|
||||
}
|
||||
|
||||
bl.tx_hashes.push_back(tx_it->first);
|
||||
|
|
|
@ -27,8 +27,12 @@
|
|||
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
set(blocksdat "")
|
||||
if(APPLE AND PER_BLOCK_CHECKPOINT)
|
||||
add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ${CMAKE_C_COMPILER} -o stub.o -c stub.c COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ld -r -sectcreate __DATA __blocks_dat ../blocks/blocks.dat -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o stub.o)
|
||||
if(PER_BLOCK_CHECKPOINT)
|
||||
if(APPLE)
|
||||
add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && touch stub.c && ${CMAKE_C_COMPILER} -o stub.o -c stub.c COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && ld -r -sectcreate __DATA __blocks_dat ../blocks/checkpoints.dat -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o stub.o && rm -f stub.*)
|
||||
else()
|
||||
add_custom_command(OUTPUT blocksdat.o COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR} && cp ../blocks/checkpoints.dat blocks.dat && ld -r -b binary -o ${CMAKE_CURRENT_BINARY_DIR}/blocksdat.o blocks.dat && rm -f blocks.dat)
|
||||
endif()
|
||||
set(blocksdat "blocksdat.o")
|
||||
endif()
|
||||
|
||||
|
|
Loading…
Reference in a new issue