Follow-up Comment #3, bug #18087 (project freeciv):

The attached patch manages to get me thru the segfaults. (It's a cat of small
diffs, gna only allows max 4 uploads)

Now there are problems with assertions:
1: in dbv_init() [bitvector.c::57]: assertion 'bits > 0 && bits < 512 * 1024'
failed.
1: Please report this message at http://gna.org/projects/freeciv/

/* Maximal size of a dynamic bitvector; for the map known bitvector it must
   be larger than the biggest possible map size (approx. MAP_MAX_SIZE *
1000)
   Use a large value to be on the save side (512kbits = 64kb). */
#define MAX_DBV_LENGTH 512 * 1024

So why isn't it defined to be MAP_MAX_SIZE * 1000? And is this define really
necessary? These are the only occurrences:

./utility/bitvector.c:#define MAX_DBV_LENGTH 512 * 1024
./utility/bitvector.c:  than 0 and lower than the maximal size given by
MAX_DBV_LENGTH. The
./utility/bitvector.c:  fc_assert_ret(bits > 0 && bits < MAX_DBV_LENGTH);
./utility/bitvector.c:  fc_assert_ret(bits > 0 && bits < MAX_DBV_LENGTH);

I bumped it (and fixed a potential bug):
-#define MAX_DBV_LENGTH 512 * 1024
+#define MAX_DBV_LENGTH (2048 * 1024)

I call this win, because now my server is killed by the OS because of lack of
memory :) The server allocated 400MB and client 200MB before being killed.

(file #12935)
    _______________________________________________________

Additional Item Attachment:

File name: diff                           Size:9 KB


    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?18087>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to