Custom Query (245 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (22 - 24 of 245)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Ticket Resolution Summary Owner Reporter
#189 invalid emxomfar cannot build big libraries for Mozilla bird Yuri Dario
Description

Build of static libs for Mozilla fails with 'Source library too big'. Looking at code, this patch

Index: omflibcl.c
===================================================================
--- omflibcl.c	(revision 3612)
+++ omflibcl.c	(working copy)
@@ -22,14 +22,14 @@
   /* Build a vector which maps page numbers to module table
      entries. */
 
-  reverse = malloc (65536 * sizeof (*reverse));
+  reverse = malloc (65536*2 * sizeof (*reverse));
   if (reverse == NULL)
     {
       errno = ENOMEM;
       return omflib_set_error (error);
     }
 
-  for (i = 0; i < 65536; ++i)
+  for (i = 0; i < 65536*2; ++i)
     reverse[i] = -1;
   for (i = 0; i < src->mod_count; ++i)
     reverse[src->mod_tab[i].page] = i;
@@ -46,7 +46,7 @@
           free (reverse);
           return -1;
         }
-      if (long_page > 65535)
+      if (long_page > (65536*2-1))
         {
           strcpy (error, "Source library too big");
           free (reverse);

fixed Peter build problems. I only doubled the number of entries, I don't know if this is the best fix.

#190 wontfix Libc path rewriting is not working for fork()ed processes bird Yuri Dario
Description

Use of the klibccfg pathrewriter dll works only for main process: child forked processes can use only predefined libc rewriting rules (e.g. /@tmpdir).

This could be a dll init fault.

Sample testcase:

#include <sys/stat.h>

#include <stdio.h>
#include <unistd.h>

//#define DIR "/@tmpdir"
#define DIR "/$e/dati/yuri"

void test_dir( void)
{
   int ret;
   struct stat st;

   printf( "%d test dir\n", getpid());
   ret = stat( DIR, &st);
   if (ret != 0) {
	printf( "%d test dir failed\n", getpid());
	return;
   }
   printf( "%d test dir ok\n", getpid());
}


void test( void)
{
   FILE* f;

   printf( "%d test file\n", getpid());
   f = fopen( DIR "/fax.odt", "rb");
   if (f == NULL) {
	   printf( "%d test file failed\n", getpid());
	return;
   }
   fclose(f);
   printf( "%d test file OK\n", getpid());
}

void main( void)
{
   printf( "pid %d\n", getpid());

   fork();

   test();
   test_dir();

}

#202 fixed libc gid setting is calling wrong backend function bird Yuri Dario
Description

gid related functions are calling uid backend, here is the supposed corrected source code:

Index: b_processCredentials.c
===================================================================
--- b_processCredentials.c	(revision 3523)
+++ b_processCredentials.c	(working copy)
@@ -135,7 +135,7 @@
 int __libc_Back_processSetGid(gid_t gid)
 {
     LIBCLOG_ENTER("gid=%d (%#x)\n", gid, gid);
-    int rc = __libc_spmSetUid(gid);
+    int rc = __libc_spmSetGid(gid);
     if (!rc)
         LIBCLOG_RETURN_INT(rc);
     LIBCLOG_ERROR_RETURN_INT(rc);
@@ -155,7 +155,7 @@
 int __libc_Back_processSetGidAll(gid_t rgid, gid_t egid, gid_t svgid)
 {
     LIBCLOG_ENTER("rgid=%d (%#x) egid=%d (%#x) svgid=%d (%#x)\n", rgid, rgid, egid, egid, svgid, svgid);
-    int rc = __libc_spmSetUidAll(rgid, egid, svgid);
+    int rc = __libc_spmSetGidAll(rgid, egid, svgid);
     if (!rc)
         LIBCLOG_RETURN_INT(rc);
     LIBCLOG_ERROR_RETURN_INT(rc);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Note: See TracQuery for help on using queries.