1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "scoped_refptr.h" 6 7 struct Foo { 8 int dummy; 9 }; 10 11 // Case 2: An example of an unsafe conversion, where the scoped_refptr<> is 12 // returned as a temporary, and as such both it and its object are only valid 13 // for the duration of the full expression. 14 scoped_refptr<Foo> GetBuggyFoo() { 15 return new Foo; 16 } 17 void UseBuggyFoo() { 18 scoped_refptr<Foo> unsafe = GetBuggyFoo(); 19 } 20