kernel/eka/euser/epoc/up_lib.cpp
changeset 300 1d28c8722707
parent 0 a41df078684a
equal deleted inserted replaced
293:0659d0e1a03c 300:1d28c8722707
    13 // Description:
    13 // Description:
    14 // e32\euser\epoc\up_lib.cpp
    14 // e32\euser\epoc\up_lib.cpp
    15 // 
    15 // 
    16 //
    16 //
    17 
    17 
       
    18 #include "us_std.h"
    18 #include "up_std.h"
    19 #include "up_std.h"
    19 #include <e32uid.h>
    20 #include <e32uid.h>
    20 #include "u32std.h"
    21 #include "u32std.h"
    21 #include <e32svr.h>
    22 #include <e32svr.h>
    22 #include <e32panic.h>
    23 #include <e32panic.h>
   228 TInt RLibrary::InitL()
   229 TInt RLibrary::InitL()
   229 //
   230 //
   230 // Initialise any static data following a DLL load
   231 // Initialise any static data following a DLL load
   231 //
   232 //
   232 	{
   233 	{
   233 	TLinAddr ep[KMaxLibraryEntryPoints];
   234 	TEntryPointList eplist;
   234 	TInt numEps=KMaxLibraryEntryPoints;
   235 	eplist.iNumEPs=KMaxLibraryEntryPoints;
   235 	E32Loader::LibraryAttach(iHandle, numEps, ep);
   236 	E32Loader::LibraryAttach(iHandle, eplist.iNumEPs, eplist.iEPs);
   236 	if (numEps==0)
   237 	if (eplist.iNumEPs==0)
   237 		return KErrNone;
   238 		return KErrNone;
   238 	TInt i;
   239 	TInt r = eplist.CallEPs();
   239 	for (i=0; i<numEps; ++i)
   240 	if (r != KErrNone)
   240 		{
   241 		return r;
   241 		TLibraryEntry f=(TLibraryEntry)ep[i];
       
   242 		TInt r = (*f)(KModuleEntryReasonProcessAttach);
       
   243 		if (r != KErrNone)
       
   244 			return r;
       
   245 		}
       
   246 	return E32Loader::LibraryAttached(iHandle);
   242 	return E32Loader::LibraryAttached(iHandle);
   247 	}
   243 	}
   248 
   244 
   249 
   245 
   250 
   246