X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/06c24bc0efd10e5d329d871be9112fb6ae0309e0..347732736a7c51fb7ebcab24122de84882e9665f:/mac/macmisc.c diff --git a/mac/macmisc.c b/mac/macmisc.c index a5cb1f5f..7255b3d9 100644 --- a/mac/macmisc.c +++ b/mac/macmisc.c @@ -1,4 +1,4 @@ -/* $Id: macmisc.c,v 1.1 2003/02/12 23:53:15 ben Exp $ */ +/* $Id: macmisc.c,v 1.3 2003/03/29 23:07:55 ben Exp $ */ /* * Copyright (c) 1999, 2003 Ben Harris * All rights reserved. @@ -28,6 +28,8 @@ #include #include #include +#include +#include #include #include @@ -35,6 +37,7 @@ #include #include "putty.h" +#include "mac.h" #if TARGET_API_MAC_CARBON /* @@ -48,6 +51,22 @@ const CFAllocatorRef kCFAllocatorDefault = NULL; QDGlobals qd; #endif +/* + * Like FrontWindow(), but return NULL if we aren't the front process + * (i.e. the front window isn't one of ours). + */ +WindowPtr mac_frontwindow(void) +{ + ProcessSerialNumber frontpsn; + ProcessSerialNumber curpsn = { 0, kCurrentProcess }; + Boolean result; + + GetFrontProcess(&frontpsn); + if (SameProcess(&frontpsn, &curpsn, &result) == noErr && result) + return FrontWindow(); + return NULL; +} + void fatalbox(char *fmt, ...) { va_list ap; Str255 stuff; @@ -100,7 +119,7 @@ const char *filename_to_str(const Filename *fn) char *newpath; if (path != NULL) sfree(path); - path = smalloc(fn->fss.name[0]); + path = snewn(fn->fss.name[0], char); p2cstrcpy(path, fn->fss.name); pb.dirInfo.ioNamePtr = dirname; pb.dirInfo.ioVRefNum = fn->fss.vRefNum; @@ -111,7 +130,7 @@ const char *filename_to_str(const Filename *fn) err = PBGetCatInfoSync(&pb); /* XXX Assume not A/UX */ - newpath = smalloc(strlen(path) + dirname[0] + 2); + newpath = snewn(strlen(path) + dirname[0] + 2, char); p2cstrcpy(newpath, dirname); strcat(newpath, ":"); strcat(newpath, path);