equal
deleted
inserted
replaced
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 |