Skip to content

Commit 0ed9c0c

Browse files
committed
-sync msxml3 with wine 1.1.32
svn path=/trunk/; revision=43751
1 parent c7b2548 commit 0ed9c0c

File tree

11 files changed

+421
-472
lines changed

11 files changed

+421
-472
lines changed

reactos/dll/win32/msxml3/attribute.c

Lines changed: 43 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ WINE_DEFAULT_DEBUG_CHANNEL(msxml);
3939

4040
typedef struct _domattr
4141
{
42+
xmlnode node;
4243
const struct IXMLDOMAttributeVtbl *lpVtbl;
4344
LONG ref;
44-
xmlnode *node;
4545
} domattr;
4646

4747
static inline domattr *impl_from_IXMLDOMAttribute( IXMLDOMAttribute *iface )
@@ -65,7 +65,7 @@ static HRESULT WINAPI domattr_QueryInterface(
6565
}
6666
else if ( IsEqualGUID( riid, &IID_IXMLDOMNode ) )
6767
{
68-
*ppvObject = IXMLDOMNode_from_impl(This->node);
68+
*ppvObject = IXMLDOMNode_from_impl(&This->node);
6969
}
7070
else
7171
{
@@ -93,7 +93,7 @@ static ULONG WINAPI domattr_Release(
9393
ref = InterlockedDecrement( &This->ref );
9494
if ( ref == 0 )
9595
{
96-
destroy_xmlnode(This->node);
96+
destroy_xmlnode(&This->node);
9797
HeapFree( GetProcessHeap(), 0, This );
9898
}
9999

@@ -181,87 +181,87 @@ static HRESULT WINAPI domattr_get_nodeName(
181181
BSTR* p )
182182
{
183183
domattr *This = impl_from_IXMLDOMAttribute( iface );
184-
return IXMLDOMNode_get_nodeName( IXMLDOMNode_from_impl(This->node), p );
184+
return IXMLDOMNode_get_nodeName( IXMLDOMNode_from_impl(&This->node), p );
185185
}
186186

187187
static HRESULT WINAPI domattr_get_nodeValue(
188188
IXMLDOMAttribute *iface,
189189
VARIANT* var1 )
190190
{
191191
domattr *This = impl_from_IXMLDOMAttribute( iface );
192-
return IXMLDOMNode_get_nodeValue( IXMLDOMNode_from_impl(This->node), var1 );
192+
return IXMLDOMNode_get_nodeValue( IXMLDOMNode_from_impl(&This->node), var1 );
193193
}
194194

195195
static HRESULT WINAPI domattr_put_nodeValue(
196196
IXMLDOMAttribute *iface,
197197
VARIANT var1 )
198198
{
199199
domattr *This = impl_from_IXMLDOMAttribute( iface );
200-
return IXMLDOMNode_put_nodeValue( IXMLDOMNode_from_impl(This->node), var1 );
200+
return IXMLDOMNode_put_nodeValue( IXMLDOMNode_from_impl(&This->node), var1 );
201201
}
202202

203203
static HRESULT WINAPI domattr_get_nodeType(
204204
IXMLDOMAttribute *iface,
205205
DOMNodeType* domNodeType )
206206
{
207207
domattr *This = impl_from_IXMLDOMAttribute( iface );
208-
return IXMLDOMNode_get_nodeType( IXMLDOMNode_from_impl(This->node), domNodeType );
208+
return IXMLDOMNode_get_nodeType( IXMLDOMNode_from_impl(&This->node), domNodeType );
209209
}
210210

211211
static HRESULT WINAPI domattr_get_parentNode(
212212
IXMLDOMAttribute *iface,
213213
IXMLDOMNode** parent )
214214
{
215215
domattr *This = impl_from_IXMLDOMAttribute( iface );
216-
return IXMLDOMNode_get_parentNode( IXMLDOMNode_from_impl(This->node), parent );
216+
return IXMLDOMNode_get_parentNode( IXMLDOMNode_from_impl(&This->node), parent );
217217
}
218218

219219
static HRESULT WINAPI domattr_get_childNodes(
220220
IXMLDOMAttribute *iface,
221221
IXMLDOMNodeList** outList)
222222
{
223223
domattr *This = impl_from_IXMLDOMAttribute( iface );
224-
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(This->node), outList );
224+
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
225225
}
226226

227227
static HRESULT WINAPI domattr_get_firstChild(
228228
IXMLDOMAttribute *iface,
229229
IXMLDOMNode** domNode)
230230
{
231231
domattr *This = impl_from_IXMLDOMAttribute( iface );
232-
return IXMLDOMNode_get_firstChild( IXMLDOMNode_from_impl(This->node), domNode );
232+
return IXMLDOMNode_get_firstChild( IXMLDOMNode_from_impl(&This->node), domNode );
233233
}
234234

235235
static HRESULT WINAPI domattr_get_lastChild(
236236
IXMLDOMAttribute *iface,
237237
IXMLDOMNode** domNode)
238238
{
239239
domattr *This = impl_from_IXMLDOMAttribute( iface );
240-
return IXMLDOMNode_get_lastChild( IXMLDOMNode_from_impl(This->node), domNode );
240+
return IXMLDOMNode_get_lastChild( IXMLDOMNode_from_impl(&This->node), domNode );
241241
}
242242

243243
static HRESULT WINAPI domattr_get_previousSibling(
244244
IXMLDOMAttribute *iface,
245245
IXMLDOMNode** domNode)
246246
{
247247
domattr *This = impl_from_IXMLDOMAttribute( iface );
248-
return IXMLDOMNode_get_previousSibling( IXMLDOMNode_from_impl(This->node), domNode );
248+
return IXMLDOMNode_get_previousSibling( IXMLDOMNode_from_impl(&This->node), domNode );
249249
}
250250

251251
static HRESULT WINAPI domattr_get_nextSibling(
252252
IXMLDOMAttribute *iface,
253253
IXMLDOMNode** domNode)
254254
{
255255
domattr *This = impl_from_IXMLDOMAttribute( iface );
256-
return IXMLDOMNode_get_nextSibling( IXMLDOMNode_from_impl(This->node), domNode );
256+
return IXMLDOMNode_get_nextSibling( IXMLDOMNode_from_impl(&This->node), domNode );
257257
}
258258

259259
static HRESULT WINAPI domattr_get_attributes(
260260
IXMLDOMAttribute *iface,
261261
IXMLDOMNamedNodeMap** attributeMap)
262262
{
263263
domattr *This = impl_from_IXMLDOMAttribute( iface );
264-
return IXMLDOMNode_get_attributes( IXMLDOMNode_from_impl(This->node), attributeMap );
264+
return IXMLDOMNode_get_attributes( IXMLDOMNode_from_impl(&This->node), attributeMap );
265265
}
266266

267267
static HRESULT WINAPI domattr_insertBefore(
@@ -270,7 +270,7 @@ static HRESULT WINAPI domattr_insertBefore(
270270
IXMLDOMNode** outOldNode)
271271
{
272272
domattr *This = impl_from_IXMLDOMAttribute( iface );
273-
return IXMLDOMNode_insertBefore( IXMLDOMNode_from_impl(This->node), newNode, var1, outOldNode );
273+
return IXMLDOMNode_insertBefore( IXMLDOMNode_from_impl(&This->node), newNode, var1, outOldNode );
274274
}
275275

276276
static HRESULT WINAPI domattr_replaceChild(
@@ -280,191 +280,191 @@ static HRESULT WINAPI domattr_replaceChild(
280280
IXMLDOMNode** outOldNode)
281281
{
282282
domattr *This = impl_from_IXMLDOMAttribute( iface );
283-
return IXMLDOMNode_replaceChild( IXMLDOMNode_from_impl(This->node), newNode, oldNode, outOldNode );
283+
return IXMLDOMNode_replaceChild( IXMLDOMNode_from_impl(&This->node), newNode, oldNode, outOldNode );
284284
}
285285

286286
static HRESULT WINAPI domattr_removeChild(
287287
IXMLDOMAttribute *iface,
288288
IXMLDOMNode* domNode, IXMLDOMNode** oldNode)
289289
{
290290
domattr *This = impl_from_IXMLDOMAttribute( iface );
291-
return IXMLDOMNode_removeChild( IXMLDOMNode_from_impl(This->node), domNode, oldNode );
291+
return IXMLDOMNode_removeChild( IXMLDOMNode_from_impl(&This->node), domNode, oldNode );
292292
}
293293

294294
static HRESULT WINAPI domattr_appendChild(
295295
IXMLDOMAttribute *iface,
296296
IXMLDOMNode* newNode, IXMLDOMNode** outNewNode)
297297
{
298298
domattr *This = impl_from_IXMLDOMAttribute( iface );
299-
return IXMLDOMNode_appendChild( IXMLDOMNode_from_impl(This->node), newNode, outNewNode );
299+
return IXMLDOMNode_appendChild( IXMLDOMNode_from_impl(&This->node), newNode, outNewNode );
300300
}
301301

302302
static HRESULT WINAPI domattr_hasChildNodes(
303303
IXMLDOMAttribute *iface,
304304
VARIANT_BOOL* pbool)
305305
{
306306
domattr *This = impl_from_IXMLDOMAttribute( iface );
307-
return IXMLDOMNode_hasChildNodes( IXMLDOMNode_from_impl(This->node), pbool );
307+
return IXMLDOMNode_hasChildNodes( IXMLDOMNode_from_impl(&This->node), pbool );
308308
}
309309

310310
static HRESULT WINAPI domattr_get_ownerDocument(
311311
IXMLDOMAttribute *iface,
312312
IXMLDOMDocument** domDocument)
313313
{
314314
domattr *This = impl_from_IXMLDOMAttribute( iface );
315-
return IXMLDOMNode_get_ownerDocument( IXMLDOMNode_from_impl(This->node), domDocument );
315+
return IXMLDOMNode_get_ownerDocument( IXMLDOMNode_from_impl(&This->node), domDocument );
316316
}
317317

318318
static HRESULT WINAPI domattr_cloneNode(
319319
IXMLDOMAttribute *iface,
320320
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
321321
{
322322
domattr *This = impl_from_IXMLDOMAttribute( iface );
323-
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(This->node), pbool, outNode );
323+
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
324324
}
325325

326326
static HRESULT WINAPI domattr_get_nodeTypeString(
327327
IXMLDOMAttribute *iface,
328328
BSTR* p)
329329
{
330330
domattr *This = impl_from_IXMLDOMAttribute( iface );
331-
return IXMLDOMNode_get_nodeTypeString( IXMLDOMNode_from_impl(This->node), p );
331+
return IXMLDOMNode_get_nodeTypeString( IXMLDOMNode_from_impl(&This->node), p );
332332
}
333333

334334
static HRESULT WINAPI domattr_get_text(
335335
IXMLDOMAttribute *iface,
336336
BSTR* p)
337337
{
338338
domattr *This = impl_from_IXMLDOMAttribute( iface );
339-
return IXMLDOMNode_get_text( IXMLDOMNode_from_impl(This->node), p );
339+
return IXMLDOMNode_get_text( IXMLDOMNode_from_impl(&This->node), p );
340340
}
341341

342342
static HRESULT WINAPI domattr_put_text(
343343
IXMLDOMAttribute *iface,
344344
BSTR p)
345345
{
346346
domattr *This = impl_from_IXMLDOMAttribute( iface );
347-
return IXMLDOMNode_put_text( IXMLDOMNode_from_impl(This->node), p );
347+
return IXMLDOMNode_put_text( IXMLDOMNode_from_impl(&This->node), p );
348348
}
349349

350350
static HRESULT WINAPI domattr_get_specified(
351351
IXMLDOMAttribute *iface,
352352
VARIANT_BOOL* pbool)
353353
{
354354
domattr *This = impl_from_IXMLDOMAttribute( iface );
355-
return IXMLDOMNode_get_specified( IXMLDOMNode_from_impl(This->node), pbool );
355+
return IXMLDOMNode_get_specified( IXMLDOMNode_from_impl(&This->node), pbool );
356356
}
357357

358358
static HRESULT WINAPI domattr_get_definition(
359359
IXMLDOMAttribute *iface,
360360
IXMLDOMNode** domNode)
361361
{
362362
domattr *This = impl_from_IXMLDOMAttribute( iface );
363-
return IXMLDOMNode_get_definition( IXMLDOMNode_from_impl(This->node), domNode );
363+
return IXMLDOMNode_get_definition( IXMLDOMNode_from_impl(&This->node), domNode );
364364
}
365365

366366
static HRESULT WINAPI domattr_get_nodeTypedValue(
367367
IXMLDOMAttribute *iface,
368368
VARIANT* var1)
369369
{
370370
domattr *This = impl_from_IXMLDOMAttribute( iface );
371-
return IXMLDOMNode_get_nodeTypedValue( IXMLDOMNode_from_impl(This->node), var1 );
371+
return IXMLDOMNode_get_nodeTypedValue( IXMLDOMNode_from_impl(&This->node), var1 );
372372
}
373373

374374
static HRESULT WINAPI domattr_put_nodeTypedValue(
375375
IXMLDOMAttribute *iface,
376376
VARIANT var1)
377377
{
378378
domattr *This = impl_from_IXMLDOMAttribute( iface );
379-
return IXMLDOMNode_put_nodeTypedValue( IXMLDOMNode_from_impl(This->node), var1 );
379+
return IXMLDOMNode_put_nodeTypedValue( IXMLDOMNode_from_impl(&This->node), var1 );
380380
}
381381

382382
static HRESULT WINAPI domattr_get_dataType(
383383
IXMLDOMAttribute *iface,
384384
VARIANT* var1)
385385
{
386386
domattr *This = impl_from_IXMLDOMAttribute( iface );
387-
return IXMLDOMNode_get_dataType( IXMLDOMNode_from_impl(This->node), var1 );
387+
return IXMLDOMNode_get_dataType( IXMLDOMNode_from_impl(&This->node), var1 );
388388
}
389389

390390
static HRESULT WINAPI domattr_put_dataType(
391391
IXMLDOMAttribute *iface,
392392
BSTR p)
393393
{
394394
domattr *This = impl_from_IXMLDOMAttribute( iface );
395-
return IXMLDOMNode_put_dataType( IXMLDOMNode_from_impl(This->node), p );
395+
return IXMLDOMNode_put_dataType( IXMLDOMNode_from_impl(&This->node), p );
396396
}
397397

398398
static HRESULT WINAPI domattr_get_xml(
399399
IXMLDOMAttribute *iface,
400400
BSTR* p)
401401
{
402402
domattr *This = impl_from_IXMLDOMAttribute( iface );
403-
return IXMLDOMNode_get_xml( IXMLDOMNode_from_impl(This->node), p );
403+
return IXMLDOMNode_get_xml( IXMLDOMNode_from_impl(&This->node), p );
404404
}
405405

406406
static HRESULT WINAPI domattr_transformNode(
407407
IXMLDOMAttribute *iface,
408408
IXMLDOMNode* domNode, BSTR* p)
409409
{
410410
domattr *This = impl_from_IXMLDOMAttribute( iface );
411-
return IXMLDOMNode_transformNode( IXMLDOMNode_from_impl(This->node), domNode, p );
411+
return IXMLDOMNode_transformNode( IXMLDOMNode_from_impl(&This->node), domNode, p );
412412
}
413413

414414
static HRESULT WINAPI domattr_selectNodes(
415415
IXMLDOMAttribute *iface,
416416
BSTR p, IXMLDOMNodeList** outList)
417417
{
418418
domattr *This = impl_from_IXMLDOMAttribute( iface );
419-
return IXMLDOMNode_selectNodes( IXMLDOMNode_from_impl(This->node), p, outList );
419+
return IXMLDOMNode_selectNodes( IXMLDOMNode_from_impl(&This->node), p, outList );
420420
}
421421

422422
static HRESULT WINAPI domattr_selectSingleNode(
423423
IXMLDOMAttribute *iface,
424424
BSTR p, IXMLDOMNode** outNode)
425425
{
426426
domattr *This = impl_from_IXMLDOMAttribute( iface );
427-
return IXMLDOMNode_selectSingleNode( IXMLDOMNode_from_impl(This->node), p, outNode );
427+
return IXMLDOMNode_selectSingleNode( IXMLDOMNode_from_impl(&This->node), p, outNode );
428428
}
429429

430430
static HRESULT WINAPI domattr_get_parsed(
431431
IXMLDOMAttribute *iface,
432432
VARIANT_BOOL* pbool)
433433
{
434434
domattr *This = impl_from_IXMLDOMAttribute( iface );
435-
return IXMLDOMNode_get_parsed( IXMLDOMNode_from_impl(This->node), pbool );
435+
return IXMLDOMNode_get_parsed( IXMLDOMNode_from_impl(&This->node), pbool );
436436
}
437437

438438
static HRESULT WINAPI domattr_get_namespaceURI(
439439
IXMLDOMAttribute *iface,
440440
BSTR* p)
441441
{
442442
domattr *This = impl_from_IXMLDOMAttribute( iface );
443-
return IXMLDOMNode_get_namespaceURI( IXMLDOMNode_from_impl(This->node), p );
443+
return IXMLDOMNode_get_namespaceURI( IXMLDOMNode_from_impl(&This->node), p );
444444
}
445445

446446
static HRESULT WINAPI domattr_get_prefix(
447447
IXMLDOMAttribute *iface,
448448
BSTR* p)
449449
{
450450
domattr *This = impl_from_IXMLDOMAttribute( iface );
451-
return IXMLDOMNode_get_prefix( IXMLDOMNode_from_impl(This->node), p );
451+
return IXMLDOMNode_get_prefix( IXMLDOMNode_from_impl(&This->node), p );
452452
}
453453

454454
static HRESULT WINAPI domattr_get_baseName(
455455
IXMLDOMAttribute *iface,
456456
BSTR* p)
457457
{
458458
domattr *This = impl_from_IXMLDOMAttribute( iface );
459-
return IXMLDOMNode_get_baseName( IXMLDOMNode_from_impl(This->node), p );
459+
return IXMLDOMNode_get_baseName( IXMLDOMNode_from_impl(&This->node), p );
460460
}
461461

462462
static HRESULT WINAPI domattr_transformNodeToObject(
463463
IXMLDOMAttribute *iface,
464464
IXMLDOMNode* domNode, VARIANT var1)
465465
{
466466
domattr *This = impl_from_IXMLDOMAttribute( iface );
467-
return IXMLDOMNode_transformNodeToObject( IXMLDOMNode_from_impl(This->node), domNode, var1 );
467+
return IXMLDOMNode_transformNodeToObject( IXMLDOMNode_from_impl(&This->node), domNode, var1 );
468468
}
469469

470470
static HRESULT WINAPI domattr_get_name(
@@ -473,23 +473,23 @@ static HRESULT WINAPI domattr_get_name(
473473
{
474474
/* name property returns the same value as nodeName */
475475
domattr *This = impl_from_IXMLDOMAttribute( iface );
476-
return IXMLDOMNode_get_nodeName( IXMLDOMNode_from_impl(This->node), p );
476+
return IXMLDOMNode_get_nodeName( IXMLDOMNode_from_impl(&This->node), p );
477477
}
478478

479479
static HRESULT WINAPI domattr_get_value(
480480
IXMLDOMAttribute *iface,
481481
VARIANT *var1)
482482
{
483483
domattr *This = impl_from_IXMLDOMAttribute( iface );
484-
return IXMLDOMNode_get_nodeValue( IXMLDOMNode_from_impl(This->node), var1 );
484+
return IXMLDOMNode_get_nodeValue( IXMLDOMNode_from_impl(&This->node), var1 );
485485
}
486486

487487
static HRESULT WINAPI domattr_put_value(
488488
IXMLDOMAttribute *iface,
489489
VARIANT var1)
490490
{
491491
domattr *This = impl_from_IXMLDOMAttribute( iface );
492-
return IXMLDOMNode_put_nodeValue( IXMLDOMNode_from_impl(This->node), var1 );
492+
return IXMLDOMNode_put_nodeValue( IXMLDOMNode_from_impl(&This->node), var1 );
493493
}
494494

495495
static const struct IXMLDOMAttributeVtbl domattr_vtbl =
@@ -553,12 +553,7 @@ IUnknown* create_attribute( xmlNodePtr attribute )
553553
This->lpVtbl = &domattr_vtbl;
554554
This->ref = 1;
555555

556-
This->node = create_basic_node( attribute, (IUnknown*)&This->lpVtbl, NULL );
557-
if(!This->node)
558-
{
559-
HeapFree(GetProcessHeap(), 0, This);
560-
return NULL;
561-
}
556+
init_xmlnode(&This->node, attribute, (IUnknown*)&This->lpVtbl, NULL);
562557

563558
return (IUnknown*) &This->lpVtbl;
564559
}

0 commit comments

Comments
 (0)