Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e67a037 authored by Brian Carlstrom's avatar Brian Carlstrom
Browse files

Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master

parents 3de417e1 62af8f25
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@
#ifndef _CUTILS_ASHMEM_H
#define _CUTILS_ASHMEM_H

#include <stdint.h>
#include <stddef.h>

#ifdef __cplusplus
extern "C" {
+5 −0
Original line number Diff line number Diff line
@@ -87,6 +87,11 @@ mspace create_contiguous_mspace_with_base(size_t starting_capacity,
    size_t max_capacity, int locked, void *base);

size_t destroy_contiguous_mspace(mspace msp);

/*
   Returns the position of the "break" within the given mspace.
*/
void *contiguous_mspace_sbrk0(mspace msp);
#endif

/*
+12 −0
Original line number Diff line number Diff line
@@ -271,4 +271,16 @@ size_t destroy_contiguous_mspace(mspace msp) {
  }
  return 0;
}

void *contiguous_mspace_sbrk0(mspace msp) {
    struct mspace_contig_state *cs;
    mstate ms;
    const unsigned int pagesize = PAGESIZE;

    ms = (mstate)msp;
    cs = (struct mspace_contig_state *)((uintptr_t)ms & ~(pagesize-1));
    assert(cs->magic == CONTIG_STATE_MAGIC);
    assert(cs->m == ms);
    return cs->brk;
}
#endif
+1 −1
Original line number Diff line number Diff line
@@ -454,7 +454,7 @@ static void showLog(LogState *state,

    numVecs = numLines*3;  // 3 iovecs per line.
    if (numVecs > INLINE_VECS) {
        vec = (struct iovec*)malloc(sizeof(struct iovec)*numLines);
        vec = (struct iovec*)malloc(sizeof(struct iovec)*numVecs);
        if (vec == NULL) {
            msg = "LOG: write failed, no memory";
            numVecs = 3;